我有以下布局:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/aussie_bg_big" >
<ImageView
android:id="@+id/titleImage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:contentDescription="@null"
android:src="@drawable/aussie_title_small" />
<ImageView
android:id="@+id/clearButtonOutput"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/titleImage"
android:layout_alignParentRight="true"
android:contentDescription="@null"
android:src="@drawable/aussie_clear" />
<EditText
android:id="@+id/OutputText"
android:layout_width="fill_parent"
android:layout_height="100dp"
android:layout_above="@+id/clearButtonOutput"
android:layout_alignParentLeft="true"
android:background="@drawable/textbox"
android:ems="10"
android:gravity="top"
android:inputType="textMultiLine"
android:textColor="#ffffff" />
<ImageView
android:id="@+id/translateButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/OutputText"
android:layout_centerHorizontal="true"
android:clickable="true"
android:contentDescription="@null"
android:src="@drawable/translatebuttonselector" />
<ImageView
android:id="@+id/ClearButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/translateButton"
android:layout_alignParentRight="true"
android:contentDescription="@null"
android:src="@drawable/aussie_clear" />
<EditText
android:id="@+id/InputText"
android:layout_width="fill_parent"
android:layout_height="100dp"
android:layout_above="@+id/ClearButton"
android:layout_alignParentLeft="true"
android:background="@drawable/textbox"
android:ems="10"
android:gravity="top"
android:inputType="textMultiLine"
android:singleLine="false"
android:textColor="#ffffff" />
我想做的是:
- &GT;始终将“imageBottom” imageview保留在活动的BOTTOM上,水平居中。
- &GT;始终将“imageCenter” imageview保留在活动的中心,水平居中。
- &GT;将“imageBelowInputText” imageview保留在 InputText 编辑文字下方,该编辑文字位于 imageCenter ,与右侧对齐。
- &GT;将“imageBelowOutputText” imageview保留在位于 imageCenter 和 imageBottom 之间的 OutputText 编辑文本下方,对齐到正确的。
到目前为止它工作得很好,但我也希望编辑文本视图能够占用所有剩余的空间。考虑到我用dpi硬编码每个edittext的大小,为小型,普通,大型和大型屏幕提供不同版本的布局工作正常。但是,在某些布局上,它看起来仍然有点错误并且放错位置(未对齐)。这就是为什么我正在寻找一个解决方案,首先相应地放置ImageViews,然后让两个EditTexts将剩余的所有空间保持平衡(重要)。
到目前为止,我无法想到100%正确的解决方案。你能帮我吗?谢谢!
答案 0 :(得分:0)
尝试为每个EditText
视图指定高度为0dp,layout_weight
值为1.给它一个镜头,让我知道它是否有效。
答案 1 :(得分:0)
注意两个edittexts的layout_height设置为“0dp”,layout_weight设置为“1” XML
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/LinearLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:paddingTop="15dp"
android:orientation="vertical" >
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:text="Clear" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="100dp"
android:layout_gravity="center"
android:text="Bear" />
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:text="Clear" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="100dp"
android:layout_gravity="center"
android:text="Speaking Aussie" />
</LinearLayout>