我在一个相对布局中有两个 TextView。如果我想要那些总是(不同的屏幕分辨率,例如 540x960)每个 TextView 的宽度是整个 UI 宽度的 50%,如何设置 TextViews?我会将两个 TextView 的大小都设置为 UI 全宽的 50%。需要在不同的屏幕分辨率上拉伸 TextViews。我怎样才能做到这一点?
3 回答
每当在水平/垂直中平均分割一些视图,如(按钮,文本视图)
android:weight Sum / android:layout_weight技术使用...
必须记住这些技术必须仅在线性布局中支持的一件事,但是在这里您想使用相对布局,以便简单地将线性布局放在相对布局中。
必须遵守这些规则:
1> 将 android:weight Sum设置 为线性布局
2> 设置android:layout_width每个子视图在“0dp”内
3> 设置android:layout_weight每个子视图取决于多少子视图 & android:weight Sum (eg: android:weight Sum = "2" & two child view then layout_weight="1" , layout_weight="1")
前任:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="2" >
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="child View 1" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="child View 2"/>
</LinearLayout>
</RelativeLayout>
如果 Layout Orientation 为Vertical则只设置android:layout_height为"0dp"而不是android:layout_width
您可以尝试使用权重在相对布局中创建线性布局,然后设置android:layout_width="fill_parent"
和android:weightSum = 2
和android:orientation="horizontal"
,然后将 textview 放在线性布局内并设置每个 textview 的权重 1。
<RelativeLayout
android:layout_width = "fill_parent"
android:layout_height = "wrap_content">
<LinearLayout
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
android:orientation="horizontal"
android:weightSum = "2">
<TextView
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
android:text = "YOUR FIRST TEXT"
android:weight = "1"
/>
<TextView
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
android:text = "YOUR SECOND TEXT"
android:weight = "1"
/>
</LinearLayout>
</RelativeLayout>
权重总和将用于测量 textview 的部分,例如如果您给出权重总和 3 并给出 1 textview weight = 2 和另一个 textview weight = 1 布局将是 2/3 (66.666%) 和 1/3 ( 33.3333%) 所以如果你设置它 2 并给每个 textview weight = 1 它应该是 50% 和 50%
它对我有用,如果您有任何问题,请随时在评论中提问:)
为两个s设置layout_width
to并给他们相同的like并且应该这样做(或者不给任何一个 a )。fill_parent
TextView
layout_weight
1.0
layout_weight
这样的事情应该可以解决问题:
<LinearLayout
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
orientation = "horizontal">
<TextView
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
android:text = "Text 1"
/>
<TextView
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
android:text = "Text 2"
/>
</LinearLayout>