【发布时间】:2015-07-20 05:13:25
【问题描述】:
我正在尝试创建一个简单的 UI,看起来像这样
我对 android 很陌生,一直在尝试不同类型的布局(线性/相对),我相信线性可能是这里的方法(我希望在某个阶段使 ListViews 的数量动态,但现在 2没问题)。
我应该使用线性布局还是相对布局,或者两者的某种组合来实现这一点。
这是我拥有的 XML,我似乎无法让按钮正确对齐,即使它的重力设置为正确。我愿意接受有关如何解决此问题的任何建议,或者是否有更好的方法
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="1">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.9"
android:orientation="horizontal" >
<ListView
android:id="@+id/lv1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1.0"
/>
<ListView
android:id="@+id/lv2"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1.0"
/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.1"
android:orientation="horizontal" >
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:text="New Button"
android:id="@+id/button"
android:gravity="right" />
</LinearLayout>
编辑:这是 UI 当前的样子
【问题讨论】:
-
以相对布局为主。然后采用线性布局,在其中放置两个列表视图。然后在主相对布局上添加按钮,并设置 align parent right true 和线性布局下方。
-
在这种情况下如何避免布局嵌套,如果我想让 listView1 30% 的宽度和 listView2 50% 的宽度,考虑到我现在正在使用 @sanatshukla 的答案,我真的不看看我们如何在没有布局嵌套的情况下做到这一点。
-
我发布了一个答案,向您展示如何充分利用 RelativeLayout 来避免布局嵌套。但我的 ListViews 使用 50% 和 50%。您的问题中没有证据表明您想要 30% 和 50%。甚至在您的绘图中也没有。
-
你是对的,问题中没有证据,但我只是想知道如何扩展所有给出的答案
-
请检查我的答案,如果它不适合你,我会删除它。
标签: android xml user-interface android-linearlayout android-relativelayout