我想在我的xml布局上有很多文本视图,其中每两个都在一行上,我这样做:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Name: " />
<TextView
android:id="@+id/playertvName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/red"
android:textSize="20dp" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Nationality: " />
<TextView
android:id="@+id/playertvNationality"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/red"
android:textSize="20dp" />
</LinearLayout>
</LinearLayout>
但似乎不是继续为每两个textviews创建一个新的linearlayout的好方法,还有另一种方法吗?谢谢
答案 0 :(得分:3)
试试GridLayout
。这是official Google doc,这是example。
答案 1 :(得分:2)
我相信,出于您使用布局(可能是一种形式)的目的,您开发它的方式非常好。在这种情况下,我认为GridView
或任何AdapterView
都不符合您的要求。
您可以LinearLayout
使用适当的权重或RelativeLayout
。
答案 2 :(得分:1)
您可以使用TableLayout或GridView作为LinearLayout的替代。
TableLayout允许您以表格格式对齐文本视图,如果textview的数量非常小并且已修复,我建议使用TableLayout。
GridView允许您在Grid fasion中布局组件,它是一个适配器视图,这意味着,通过GridView,我们可以重用视图。它在某种程度上增加了复杂性,因此当没有文本视图时,它很有用。
答案 3 :(得分:0)
使用一个相对布局并使用android:layout_toLeftOf =“”,android:layout_toRightOf =“” 机器人:layout_below = “” android:layout_above =“”