我有一个设计问题,不知道为什么会这样做,这就是我在这里的原因。这是图像和代码。希望你们能帮助我。
http://i60.tinypic.com/fwr8mh.jpg(图片链接)
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="2:00 [Extended]"
android:textColor="#ffffff" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/light" />
</TableRow>
谢谢。
根据要求[当前代码]:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#2f4f4f" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TableLayout
android:layout_width="match_parent"
android:layout_height="match_parent" >
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#36444e" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_horizontal"
android:text="Brewing:"
android:textColor="#ffff00" />
</TableRow>
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#36444e" >
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@drawable/ghasttear" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#36444e" >
<ImageView
android:layout_width="wrap_content"
android:layout_height="32dp"
android:layout_weight="1"
android:src="@drawable/brewingarrow" />
</TableRow>
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#36444e" >
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity=""
android:layout_weight="1"
android:src="@drawable/waterbottle" />
</TableRow>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#ffffff" />
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_horizontal"
android:text="Potion Time"
android:textColor="#ffffff" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_horizontal"
android:text="0:45 [Non-Extended]"
android:textColor="#ffffff" />
</TableRow>
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:layout_width="50dp"
android:layout_height="wrap_content"
android:text="2:00 [Extended]"
android:textColor="#ffffff"
android:ellipsize="end" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/light" />
</TableRow>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#ffffff" />
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_horizontal"
android:text="Potion Description"
android:textColor="#ffffff" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_horizontal"
android:text="Poyion time lasts for 0:45 when not extended."
android:textColor="#ffffff" />
</TableRow>
</TableLayout>
</RelativeLayout>
</RelativeLayout>
答案 0 :(得分:0)
因此,在每个TableRow
组件中,您可以只有一个孩子View. So, in order to have a
TextView and an
ImageView , you have to place those Views inside another View, like a
LinearLayout or a
RelativeLayout`,这样您就可以控制他们的立场。
所以,在你的&#34;有问题的&#34; TableRow
,只需将其更改为:
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:layout_width="wrap_content"
android:id="@+id/extendedText"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_alignParentLeft="true"
android:text="2:00 [Extended]"
android:textColor="#ffffff" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:src="@drawable/light" />
</RelativeLayout>
</TableRow>
我只是将ImageView
和TextView
放在RelativeLayout
内,并将TextView
对齐到其父视图左侧(即RelativeLayout)和{ {1}}在右边。如果您的文字不会太长,请不要介意ImageView
值。