Почему все содержимое прокрутки не отображается? - PullRequest
0 голосов
/ 27 августа 2018

Ниже приведен мой XML-файл. Я поместил все содержимое в ScrollView внутри линейного макета, и, как вы можете видеть, другой макет, содержащий все представления, обернут внутри ScrollView, но мой последний виджет кнопки не виден на бегу. Какая может быть возможная причина и решение для того же самого?

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:layout_width="match_parent"
        android:orientation="vertical"
        android:layout_height="wrap_content">

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/btn1"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:text="Overview"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/btn2"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:text="Program Structure"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/btn3"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:text="Tokens , Semicolons and Comments"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:id="@+id/btn4"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:text="Data Types"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn5"
            android:text="Variables"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn6"
            android:text="Constants and Literals"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn7"
            android:text="Operators"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn8"
            android:text="Decision Making"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn9"
            android:text="Loops"/>

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn10"
            android:text="Functions"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn11"
            android:text="Scope Rules"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn12"
            android:text="Arrays"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:id="@+id/btn13"
            android:textColor="#fff"
            android:text="Pointers"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn14"
            android:text="Strings"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn15"
            android:text="Structures"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn16"
            android:text="Typedef"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn17"
            android:text="Input and Output"/>
        <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn18"
        android:text="File I/O"/>

        <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn19"
        android:text="Preprocessors"/>

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn20"
            android:text="Header Files"/>

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn21"
            android:text="Type Casting"/>

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn22"
            android:text="Error Handling"/>

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn23"
            android:text="Recursion"/>



    </LinearLayout>

</ScrollView>

Ответы [ 4 ]

0 голосов
/ 28 августа 2018

Попробуйте использовать код ниже

<ScrollView android:layout_width="match_parent"
           android:layout_height="match_parent"
           android:fillViewport="true"
           xmlns:android="http://schemas.android.com/apk/res/android">

<LinearLayout
    android:layout_width="match_parent"
    android:orientation="vertical"
    android:layout_height="wrap_content">

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/btn1"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:text="Overview"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/btn2"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:text="Program Structure"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/btn3"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:text="Tokens , Semicolons and Comments"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:id="@+id/btn4"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:text="Data Types"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn5"
        android:text="Variables"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn6"
        android:text="Constants and Literals"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn7"
        android:text="Operators"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn8"
        android:text="Decision Making"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn9"
        android:text="Loops"/>

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn10"
        android:text="Functions"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn11"
        android:text="Scope Rules"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn12"
        android:text="Arrays"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:id="@+id/btn13"
        android:textColor="#fff"
        android:text="Pointers"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn14"
        android:text="Strings"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn15"
        android:text="Structures"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn16"
        android:text="Typedef"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn17"
        android:text="Input and Output"/>
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn18"
        android:text="File I/O"/>

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn19"
        android:text="Preprocessors"/>

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn20"
        android:text="Header Files"/>

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn21"
        android:text="Type Casting"/>

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn22"
        android:text="Error Handling"/>

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="@color/colorPrimaryDark"
        android:textColor="#fff"
        android:id="@+id/btn23"
        android:text="Recursion"/>



</LinearLayout>

Я только что добавил атрибут "fillViewPort =" true "" в XML. Вы можете увидеть в документах, что при использовании «fillViewPort» scrollView растягивается настолько, насколько это возможно, чтобы сделать видимость видимой для пользователя. https://developer.android.com/reference/android/widget/ScrollView

0 голосов
/ 27 августа 2018

Попробуйте использовать NestedScrollView, как показано ниже:

<android.support.v4.widget.NestedScrollView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:isScrollContainer="true">

............ (Your other Views)        

</android.support.v4.widget.NestedScrollView>

android: isScrollContainer = "true" Это важно.

Надеюсь, это работает. Любые сомнения, просто прокомментируйте.

0 голосов
/ 27 августа 2018

Это из-за установки полей, scrollview иногда игнорирует их. Отметьте вместо верхнего поля первой кнопки и верхнего поля последней кнопки, удалите эти два поля и замените эти два поля представлениями с одинаковой высотой. Это должно исправить вашу проблему.

0 голосов
/ 27 августа 2018

Замените ваш XML-файл следующим кодом:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView
android:id="@+id/bar_chart_main_scroll"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:layout_width="match_parent"
        android:orientation="vertical"
        android:layout_height="match_parent">

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/btn1"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:text="Overview"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/btn2"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:text="Program Structure"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/btn3"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:text="Tokens , Semicolons and Comments"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:id="@+id/btn4"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:text="Data Types"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn5"
            android:text="Variables"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn6"
            android:text="Constants and Literals"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn7"
            android:text="Operators"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn8"
            android:text="Decision Making"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn9"
            android:text="Loops"/>

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn10"
            android:text="Functions"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn11"
            android:text="Scope Rules"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn12"
            android:text="Arrays"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:id="@+id/btn13"
            android:textColor="#fff"
            android:text="Pointers"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn14"
            android:text="Strings"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn15"
            android:text="Structures"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn16"
            android:text="Typedef"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn17"
            android:text="Input and Output"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn18"
            android:text="File I/O"/>

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn19"
            android:text="Preprocessors"/>

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn20"
            android:text="Header Files"/>

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn21"
            android:text="Type Casting"/>

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn22"
            android:text="Error Handling"/>

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="@color/colorPrimaryDark"
            android:textColor="#fff"
            android:id="@+id/btn23"
            android:text="Recursion"/>

    </LinearLayout>

</RelativeLayout>

...