我正在尝试创建一个三个文本视图彼此相邻的布局.文本视图的长度不同.
我想做的就是安排它们,使它们总是具有相同的layout_width,而不管它们的文本长度如何.
我试过的方法:
1)我尝试使用linear_layout并将textviews的权重设置为1但不执行此操作,因为它仅适用于所有textViews定位后的剩余宽度.
2)我也尝试使用表格布局并使用stretchColumns =“*”拉伸所有列.但是,这也会将所需的宽度分配给文本的长度,然后才会拉伸列.
3)这是一个黑客,但这也不起作用.我试图在相对布局中有一个线性布局,三个文本视图没有文本,但通过设置它们的权重强制它们具有相等的宽度.这可以工作,但我希望我的下一个视图在相对布局中将自己与线性布局中视图的右边缘和左边缘对齐.但这不起作用.这是我用于此的布局.
<RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent" > <!-- This is a hack to have all three textviews in a row to obtain equal width --> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <TextView android:id="@+id/tv_ref1" android:layout_width="0dp" android:layout_height="wrap_content" android:text="My" android:layout_weight="1.0" android:gravity="center" /> <TextView android:id="@+id/tv_ref2" android:layout_width="0dp" android:layout_height="wrap_content" android:text="My" android:layout_weight="1.0" android:gravity="center" /> <TextView android:id="@+id/tv_ref3" android:layout_width="0dp" android:layout_height="wrap_content" android:text="My ghghhfghjjghjkkhgfhfghfjhjh" android:layout_weight="1.0" android:gravity="center" /> </LinearLayout> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/tv_ref1" android:gravity="center" android:text="Text Text Text" android:textColor="@color/white" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/tv_ref1" android:gravity="center_horizontal" android:text="Med" android:textColor="@color/white" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/tv_ref1" android:gravity="center" android:text="Long Text wtwy yu hjsyi" android:textColor="@color/white" /> </RelativeLayout>
请让我知道我可能做错了什么或如何强制我的文本视图连续具有相同的宽度.
谢谢.
解决方法
对于所有TextEdits,将layout_width设置为“fill_parent”并将layout_weight设置为“1”会强制它们具有相等的宽度