我有一个相对布局的edittext和一个按钮。这是xml:
<?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="wrap_content" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="5sp" >
<Button
android:id="@+id/action_home_button"
android:layout_width="35sp"
android:layout_height="35sp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:background="@drawable/home_button" />
<EditText
android:id="@+id/action_search"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toRightOf="@+id/action_home_button"
android:focusable="true"
android:focusableInTouchMode="true"
android:hint="Some hint..."
android:textColor="#FFFFFF"
android:textColorHint="#DDDDDD" />
</RelativeLayout>
<ImageView
android:layout_width="match_parent"
android:layout_height="5sp"
android:layout_alignParentBottom="true"
android:background="#EC9D21" />
</RelativeLayout>
问题是该按钮位于RelativeLayout
的中心位置,但我的EditText
与布局的顶部对齐。有什么我想念的吗?提前谢谢。
编辑上面我更新了我的xml。我将其设置为我的操作栏的自定义视图。但这不应该有所作为,因为按钮没有问题与中心垂直对齐。感谢名单
编辑 EditText应对齐中心垂直
答案 0 :(得分:0)
为Uxonith +1。改变背景似乎是诀窍,例如。 android:background="#000000"
。对我来说这很好,因为我不得不改变背景,但如果你需要标准的编辑文本,这将不是一个解决方案。
答案 1 :(得分:0)
某些主题中的标准EditTexts似乎有一些内置在padding
或margin
周围和/或下面。如果您希望消除此问题,那么我会建议使用nine patch,背景颜色或其他形式的自定义背景。
尝试设置负底边距或疯狂的东西可能会解决一个标准EditText的问题,但你必须小心Android版本,因为他们的EditTexts可能有不同的主题,并给出了相当意外的行为。
至于为什么主题设计师选择在下面留下这个差距超出了我。当开发人员不在垂直对齐的EditTexts之间添加边距时,我最好的猜测就是他们“保存面子”的方式吗?