ScrollView控件不会通过滚动显示更多行

时间:2013-11-26 15:11:27

标签: android

tvReceiveNumber和tvOnlyOrExceptNumber控件有很多行,所以我在我的UI中添加了一个ScrollView控件。 我想我可以使用ScrollView显示更多行,但是我失败了,ScrollView控件不会滚动到更多行。 我能怎么做?谢谢!

顺便说一句,如果您有更好的方法通过滚动屏幕显示多行,并保持工具栏按钮,如btnEdit,btnDeleet和btnClose始终显示在屏幕的底部,请告诉我你好吗?

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/border_ui" >

    <com.google.ads.AdView
        android:id="@+id/adView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        ads:adSize="SMART_BANNER"
        ads:adUnitId="a15284e3e927f18"
        ads:loadAdOnCreate="false" />

    <LinearLayout
        android:id="@+id/LinearLayoutName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/adView"  
        android:orientation="horizontal" >

        <TextView
            android:id="@+id/tvRuleNameTitle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Rule Name" />

        <TextView
            android:id="@+id/tvRuleName"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            android:text="Rule Name" />

    </LinearLayout>


    <LinearLayout
        android:id="@+id/LinearLayoutChecked"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/LinearLayoutName"  
        android:orientation="horizontal" >

        <TextView
            android:id="@+id/tvEnabledRule"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Enabled Rule" />

        <CheckBox
            android:id="@+id/chEnabledRule"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:enabled="false"
            android:text="" />
    </LinearLayout>


    <ScrollView
     android:layout_width="match_parent"
    android:layout_height="match_parent"
        android:layout_below="@+id/LinearLayoutChecked" >

        <LinearLayout
            android:id="@+id/LinearLayoutOption"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/tvReceiveTitle"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Receiver"
                 />

            <TextView
                android:id="@+id/tvReceiveNumber"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="1\n2\n3\n4\n5\n6\n7\n8\n9"/>

            <TextView
                android:id="@+id/tvOptionTitle"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Forward Option" />

            <TextView
                android:id="@+id/tvOnlyOrExceptNumber"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="1\n2\n3\n4\n5\n6\n7\n8\n9\n10"  />
        </LinearLayout>
    </ScrollView>

    <LinearLayout
        android:id="@+id/linearLayout1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_gravity="center_vertical"
        android:background="#DCDCDC"
        android:gravity="center"
        android:orientation="horizontal" >

        <Button
            android:id="@+id/btnEdit"
            style="@style/myTextAppearance"
            android:layout_width="0dip"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:checked="true"
            android:text="Edit" />

        <Button
            android:id="@+id/btnDelete"
            style="@style/myTextAppearance"
            android:layout_width="0dip"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:text="Delete" />

        <Button
            android:id="@+id/btnClose"
            style="@style/myTextAppearance"
            android:layout_width="0dip"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:text="Close" />
    </LinearLayout>


</RelativeLayout>

以下代码也不好。工具栏按钮如btnEdit,btnDeleet和btnClose不能总是显示在屏幕的底部,我需要滚动UI来显示工具栏,而更多的tvOnlyOrExceptNumber控件的行消失了,我不知道为什么?

<com.google.ads.AdView
    android:id="@+id/adView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    ads:adSize="SMART_BANNER"
    ads:adUnitId="a15284e3e927f18"
    ads:loadAdOnCreate="false" />

<LinearLayout
    android:id="@+id/LinearLayoutName"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/adView"  
    android:orientation="horizontal" >

    <TextView
        android:id="@+id/tvRuleNameTitle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Rule Name" />

    <TextView
        android:id="@+id/tvRuleName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:text="Rule Name" />

</LinearLayout>


<LinearLayout
    android:id="@+id/LinearLayoutChecked"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/LinearLayoutName"  
    android:orientation="horizontal" >

    <TextView
        android:id="@+id/tvEnabledRule"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Enabled Rule" />

    <CheckBox
        android:id="@+id/chEnabledRule"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:enabled="false"
        android:text="" />
</LinearLayout>



    <LinearLayout
        android:id="@+id/LinearLayoutOption"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/LinearLayoutChecked"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/tvReceiveTitle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Receiver"
             />

        <TextView
            android:id="@+id/tvReceiveNumber"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="1\n2\n3\n4\n5\n6\n7\n8\n9"/>

        <TextView
            android:id="@+id/tvOptionTitle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Forward Option" />

        <TextView
            android:id="@+id/tvOnlyOrExceptNumber"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="1\n2\n3\n4\n5\n6\n7\n8\n9\n10"  />
    </LinearLayout>


<LinearLayout
    android:id="@+id/linearLayout1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_gravity="center_vertical"
    android:background="#DCDCDC"
    android:gravity="center"
    android:orientation="horizontal" >

    <Button
        android:id="@+id/btnEdit"
        style="@style/myTextAppearance"
        android:layout_width="0dip"
        android:layout_height="fill_parent"
        android:layout_weight="1"
        android:checked="true"
        android:text="Edit" />

    <Button
        android:id="@+id/btnDelete"
        style="@style/myTextAppearance"
        android:layout_width="0dip"
        android:layout_height="fill_parent"
        android:layout_weight="1"
        android:text="Delete" />

    <Button
        android:id="@+id/btnClose"
        style="@style/myTextAppearance"
        android:layout_width="0dip"
        android:layout_height="fill_parent"
        android:layout_weight="1"
        android:text="Close" />
</LinearLayout>

结果图片

enter image description here

2 个答案:

答案 0 :(得分:1)

ScrollView需要是xml中的根元素。将您的元素添加到LinearLayout或RelativeLayout,它是ScrollView的第一个也是唯一的子项。

答案 1 :(得分:1)

试试这个:)

编辑:

最后一行没有出现:)

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/border_ui">
<com.google.ads.AdView
    android:id="@+id/adView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    ads:adSize="SMART_BANNER"
    ads:adUnitId="a15284e3e927f18"
    ads:loadAdOnCreate="false" />
<LinearLayout
    android:id="@+id/linearLayout1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_gravity="center_vertical"
    android:background="#DCDCDC"
    android:gravity="center"
    android:orientation="horizontal">
    <Button
        android:id="@+id/btnEdit"
        style="@style/myTextAppearance"
        android:layout_width="0dip"
        android:layout_height="fill_parent"
        android:layout_weight="1"
        android:checked="true"
        android:text="Edit" />
    <Button
        android:id="@+id/btnDelete"
        style="@style/myTextAppearance"
        android:layout_width="0dip"
        android:layout_height="fill_parent"
        android:layout_weight="1"
        android:text="Delete" />
    <Button
        android:id="@+id/btnClose"
        style="@style/myTextAppearance"
        android:layout_width="0dip"
        android:layout_height="fill_parent"
        android:layout_weight="1"
        android:text="Close" />
</LinearLayout>
<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_below="@id/adView"
    android:id="@+id/scrollView1"
    android:minWidth="25px"
    android:minHeight="25px"
    android:layout_above="@id/linearLayout1">
    <RelativeLayout
        android:minWidth="25px"
        android:minHeight="25px"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/relativeLayout1">
        <LinearLayout
            android:id="@+id/LinearLayoutName"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/adView"
            android:orientation="horizontal"
            android:layout_alignParentTop="true">
            <TextView
                android:id="@+id/tvRuleNameTitle"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Rule Name" />
            <TextView
                android:id="@+id/tvRuleName"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10dp"
                android:text="Rule Name" />
        </LinearLayout>
        <LinearLayout
            android:id="@+id/LinearLayoutChecked"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/LinearLayoutName"
            android:orientation="horizontal">
            <TextView
                android:id="@+id/tvEnabledRule"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Enabled Rule" />
            <CheckBox
                android:id="@+id/chEnabledRule"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:enabled="false"
                android:text="" />
        </LinearLayout>
        <LinearLayout
            android:id="@+id/LinearLayoutOption"
            android:orientation="vertical"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/LinearLayoutChecked">
            <TextView
                android:id="@+id/tvReceiveTitle"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Receiver" />
            <TextView
                android:id="@+id/tvReceiveNumber"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="1\n2\n3\n4\n5\n6\n7\n8\n9" />
            <TextView
                android:id="@+id/tvOptionTitle"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Forward Option" />
            <TextView
                android:id="@+id/tvOnlyOrExceptNumber"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="1\n2\n3\n4\n5\n6\n7\n8\n9\n10" />
        </LinearLayout>
    </RelativeLayout>
</ScrollView>
</RelativeLayout>