我正在尝试创建一个有3个垂直向下的图像视图的布局 在每个imageview旁边我想要一个Text视图作为标题,一个文本视图作为描述
http://i.stack.imgur.com/PfODh.png
这是我到目前为止所尝试的内容:但是当标题或描述文本很长时,它会从显示中删除imageview(如上图所示) 我希望imageview始终显示在左侧,标题/描述只显示在imageview的右侧。
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="bottom"
android:gravity="center_vertical|center_horizontal"
android:orientation="vertical" >
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingBottom="0dip"
android:paddingLeft="10dip"
android:paddingRight="10dip"
android:paddingTop="0dip" >
<ImageView
android:id="@+id/Iv1"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_weight=".1"
android:src="@drawable/ic_launcher" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:gravity="center_vertical|center_horizontal"
android:orientation="vertical" >
<TextView
android:id="@+id/tv11"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Title goes here..."
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="bold" />
<TextView
android:id="@+id/tv12"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=".2"
android:text="Description goes here..."
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingBottom="0dip"
android:paddingLeft="10dip"
android:paddingRight="10dip"
android:paddingTop="0dip" >
<ImageView
android:id="@+id/iv2"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_weight=".1"
android:src="@drawable/ic_launcher" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="bottom"
android:gravity="center_vertical|center_horizontal"
android:orientation="vertical" >
<TextView
android:id="@+id/tv21"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Title goes here..."
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="bold" />
<TextView
android:id="@+id/tv22"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=".2"
android:text="Description goes here..."
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingBottom="0dip"
android:paddingLeft="10dip"
android:paddingRight="10dip"
android:paddingTop="0dip" >
<ImageView
android:id="@+id/iv3"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_weight=".1"
android:src="@drawable/ic_launcher" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="bottom"
android:gravity="center_vertical|center_horizontal"
android:orientation="vertical" >
<TextView
android:id="@+id/tv31"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Title goes here..."
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="bold" />
<TextView
android:id="@+id/tv32"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=".2"
android:text="Description goes here..."
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="" />
</LinearLayout>
</TableRow>
<Button
android:id="@+id/BT1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="15dp"
android:drawablePadding="10dip"
android:drawableRight="@drawable/ic_launcher"
android:text="CLOSE" />
</LinearLayout>
</FrameLayout>
谢谢。
答案 0 :(得分:0)
尝试将imageView
和LinearLayout
(包含两个TextView
)放在linearLayout
中。然后给线性布局一个weightSum
可能为100.然后给imageView
一个layout_weight
为70,linearLayout
一个layout_weight
为30。
答案 1 :(得分:0)
您可以尝试这样做:
<?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" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="vertical" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:src="@drawable/ic_in_call_touch_hold" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/imageView1"
android:gravity="center_vertical"
android:orientation="vertical" >
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="title" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="long long text long long text long long text long long text long long text long long text long long text long long text long long text " />
</LinearLayout>
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="vertical" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:src="@drawable/ic_in_call_touch_hold" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/imageView1"
android:gravity="center_vertical"
android:orientation="vertical" >
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="title" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="long long text long long text long long text long long text long long text long long text long long text long long text long long text " />
</LinearLayout>
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="vertical" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:src="@drawable/ic_in_call_touch_hold" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/imageView1"
android:gravity="center_vertical"
android:orientation="vertical" >
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="title" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="long long text long long text long long text long long text long long text long long text long long text long long text long long text " />
</LinearLayout>
</RelativeLayout>
</LinearLayout>
但使用ListView将是最佳解决方案。