当 EditText 和 Button 控件放置在同一行时,我试图创建一种“按钮编辑”控件。我使用了一个简单的 LinearLayout:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<EditText
android:id="@+id/editTextFileName"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:hint="Database file name"
android:inputType="textUri" />
<Button
android:id="@+id/buttonFileSelect"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:minWidth="46dip"
android:text="..." />
</LinearLayout>
问题是编辑框和按钮未在同一“顶线”上对齐:
仔细看看:
在不同的模拟器上,我得到了不同的间距。
如何使EditText和Button始终在顶线上对齐?
解决方案(感谢@steevoo 和@Mohamed_AbdAllah):
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<Button
android:id="@+id/buttonFileSelect"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:minWidth="46dip"
android:layout_alignParentRight="true"
android:text="..." />
<EditText
android:id="@+id/editTextFileName"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:ems="10"
android:layout_toLeftOf="@id/buttonFileSelect"
android:layout_alignTop="@id/buttonFileSelect"
android:hint="Database file name"
android:inputType="textUri" />
</RelativeLayout>
最佳答案
尝试使用 RelativeLayout
并使用 android:layout_alignTop
来对齐 Button
和 EditText
的顶部>。另外,您可以给它们相同的固定高度 (46dip),但这可能会导致 EditText
关于android - 如何为 EditText 和 Button 设置顶线对齐的布局?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14315155/