我需要在一行中显示和TextView(标签),EditText(输入)和TextView(后缀)。
我遇到的问题是 - 如果标签TextView太长,那么EditText和Suffix TextView就不会被绘制。
这是我的代码。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_gravity="center_vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:layout_weight="0"
android:padding="5dp"
android:text="Label"
android:id="@+id/label_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<EditText
android:layout_weight="1"
android:id="@+id/input_edit_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColorHint="@color/dark_grey"
android:textColor="@color/black"
android:hint="text.." />
<TextView
android:padding="5dp"
android:layout_weight="0"
android:text="Suffix.."
android:background="@color/lite_grey"
android:id="@+id/suffix_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
所以我想要的是 - 即使标签超过2-3行,EditText出现后跟另一个TextView。
任何指针都会受到赞赏。
谢谢!
修改 我添加了一些“图表”,这样你就可以理解我想做的更好了。
EditText的标签可以是任意长度(2/3行),所以每当标签完成时我想要一个EditText启动(后面是另一个显示后缀的TextView ..)
.. ![这显示了2行标签和TextView ..]
编辑2:感谢您的回复!我认为@questioner真的明白我想要做什么,即我希望你的3个视图转移到其他行,这样他们的行为就像他们是一个视图 - 并且他建议我必须为此找到一个库! / p>
答案 0 :(得分:1)
为什么不使用RelativeLayout
代替LinearLayout
,然后使用android:layout_below="@+id/..."
或android:layout_above="@+id/..."
android:layout_toRightOf="@+id/..."
或android:layout_toLeftOf="@+id/..."
答案 1 :(得分:1)
这个怎么样:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:padding="5dp"
android:text="Label"
android:id="@+id/label_text_view"
android:layout_width="100dp"
android:layout_gravity="center_vertical"
android:layout_height="wrap_content"/>
<EditText
android:layout_weight="1"
android:id="@+id/input_edit_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:textColorHint="@color/dark_grey"
android:textColor="@color/black"
android:hint="text.."/>
<TextView
android:padding="5dp"
android:text="Suffix.."
android:layout_gravity="center_vertical"
android:background="@color/lite_grey"
android:id="@+id/suffix_text_view"
android:layout_width="100dp"
android:layout_height="wrap_content"/>
</LinearLayout>
如果您希望3个视图移动到其他行,以便它们的行为类似于一个视图 - 您应该使用外部库。
答案 2 :(得分:0)
集
android:layout_weight="1"
对于每个视图,以便它们都占据相同数量的水平空间。
答案 3 :(得分:0)
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_gravity="center_vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:weightSum="1">
试试这个或请再扩展一下。