我需要使用两个表单小部件创建一个简单的布局(例如 - 两个按钮)。第一个必须填充父布局的所有可用宽度,第二个必须具有一些固定大小。
这就是我需要的:
如果我将FILL_PARENT设置为第一个小部件 - 我没有看到第二个小部件。它只是从布局的视图区域吹走:)我不知道如何解决这个问题......
答案 0 :(得分:15)
最简单的方法是将layout_weight
与LinearLayout
一起使用。请注意,第一个TextView的宽度为"0dp"
,这意味着“忽略我并使用权重”。重量可以是任意数量;因为它是唯一的加权视图,所以它将扩展以填充可用空间。
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
/>
<TextView
android:layout_width="25dp"
android:layout_height="wrap_content"
/>
</LinearLayout>
答案 1 :(得分:1)
您可以使用RelativeLayout或FrameLayout来完成此任务。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginBottom="5dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="5dp"
android:background="#ccccee"
android:text="A label. I need to fill all available width." />
<TextView
android:layout_width="20dp"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginBottom="5dp"
android:layout_marginTop="5dp"
android:paddingRight="5dp"
android:background="#aaddee"
android:text=">>" />
</RelativeLayout>