当其他视图的高度不为零时,使Button的align_parentBottom =“true”

时间:2015-10-12 17:00:34

标签: android xml user-interface

首先,标题可能看起来毫无意义,但我不知道如何在标题中很好地描述我的问题。

我的Relative layout2 buttons(过去的游戏和即将开始的游戏)和2 listviews。每当按下一个按钮时,相关的列表视图将被折叠(高度将为零),如果它已经展开或反向将发生。 ( i used this solution

问题: 当我在5英寸屏幕手机上运行时,一切都很好。请看下面的图片:

[![] [2] [2]

但如果我在10英寸平板电脑上运行它,它看起来像这样:

[![] [3] [3]

当它在不到5英寸的手机上运行时也会发生同样的情况。

我的问题

  • 我是否需要为平板电脑制作另一种布局?比如在layout-large文件夹中?

  • 或者我可以在Jave文件中使用一些事件,当列表视图没有折叠时,它会动态设置按钮对齐父底部属性。

  • 或者可以在我当前的XML

  • 中修复它

以下是我要求帮助的那部分代码

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="fill_parent"
    android:layout_marginTop="10dp"
    android:orientation="vertical">

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

        <Button
            android:id="@+id/btnPastGames"
            android:layout_width="match_parent"
            android:layout_height="30dp"
            android:layout_centerHorizontal="true"
            android:layout_marginLeft="15dp"
            android:layout_marginStart="15dp"
            android:background="@color/YellowColor"
            android:text="Past Games"
            android:textAllCaps="false"
            android:textSize="15sp" />

        <ListView
            android:id="@+id/lvPastGames"
            android:layout_width="match_parent"
            android:layout_height="255dp"
            android:layout_below="@+id/btnPastGames"
            android:layout_centerHorizontal="true"
            android:layout_marginLeft="17dp"
            android:layout_marginStart="17dp"
            android:layout_marginTop="5dp"
            android:divider="@null" />

        <Button
            android:id="@+id/btnUpcommigGames"
            android:layout_width="match_parent"
            android:layout_height="30dp"
            android:layout_below="@+id/lvPastGames"
            android:layout_centerHorizontal="true"
            android:layout_marginLeft="15dp"
            android:layout_marginStart="15dp"
            android:background="@color/YellowColor"
            android:text="Up Coming Games"
            android:textAllCaps="false"
            android:textSize="15sp" />

        <ListView
            android:id="@+id/lvUpcomingGames"
            android:layout_width="match_parent"
            android:layout_height="255dp"
            android:layout_below="@+id/btnUpcommigGames"
            android:layout_centerHorizontal="true"
            android:layout_marginLeft="17dp"
            android:layout_marginStart="17dp"
            android:divider="@null" />

    </RelativeLayout>

</LinearLayout>

如果你们能给我一些关于制作将在所有屏幕尺寸和密度上运行的用户界面的建议,我将非常感激

感谢任何能帮助我的人

1 个答案:

答案 0 :(得分:0)

您正在尝试解决ExpandableListView的功能。请看以下页面:

http://www.androidhive.info/2013/07/android-expandable-list-view-tutorial/