在Android布局中左alignment和右alignment文字视图

我正在开始使用Android。 我很难得到一个简单的布局。

我想使用LinearLayout将两个TextViews放在一行中。 一个TextView在左边,另一个在右边(类似于float:left,float:right在CSS中)。

这是可能的,还是我需要使用不同的ViewGroup或进一步布局嵌套来实现它?

以下是我到目前为止:

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" android:padding="10sp"> <TextView android:id="@+id/mytextview1" android:layout_height="wrap_content" android:text="somestringontheleftSomestring" android:layout_width="wrap_content"/> <TextView android:id="@+id/mytextview2" android:layout_height="wrap_content" android:ellipsize="end" android:text="somestringontheright" android:layout_width="wrap_content"/> </LinearLayout> 

layout_alignParentLeftlayout_alignParentRight使用RelativeLayout

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/RelativeLayout01" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="10dp"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:id="@+id/mytextview1"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:id="@+id/mytextview2"/> </RelativeLayout> 

另外, 你应该在你的布局中使用dip (或者dp )而不是spsp反映文本设置以及屏幕密度,因此通常只用于调整文本项目大小。

您可以使用重力属性来“浮动”视图。

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="center_vertical|center_horizontal" android:orientation="horizontal"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="left" android:layout_weight="1" android:text="Left Aligned" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="right" android:layout_weight="1" android:text="Right Aligned" /> </LinearLayout> </LinearLayout> 

即使Rollin_s的提示,Dave Webb的答案不适合我。 右侧TextView中的文本仍然与左侧TextView的文本重叠。

我最终得到了这样的想要的行为:

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/RelativeLayout01" android:layout_width="match_parent" android:layout_height="match_parent" android:padding="10dp"> <TextView android:id="@+id/mytextview1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" /> <TextView android:id="@+id/mytextview2" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_toRightOf="@id/mytextview1" android:gravity="right"/> </RelativeLayout> 

请注意,mytextview2将"android:layout_width"设置为"match_parent"

希望这可以帮助别人!

 <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="Hello world" /> <View android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Gud bye" />