是否可以这样,如果没有为TextView提供文本,布局中textView占用的区域将被删除,因此没有空白区域,文本应该是这样,所以它可以被其他东西使用。
在这里您可以看到信息将在“2013年9月17日”之间的差距但是如果我想删除该空间,那么布局看起来好多了但仍然可以将TextView用于其他部分作为布局如何完成。您在上面看到的布局是ListView的一部分,因此如果我刚删除了TextView,如果日期部分下面有信息则不会显示。该信息是从互联网上托管的XML文件接收的。对不起如果我解释得非常糟糕。
在线托管XML文件:
<games_list>
<game>
<id>1</id>
<title>Grand Theft Auto 5</title>
<date1>17th September 2013</date1>
<date2/>
<date3/>
<platforms>360, PS3</platforms>
<thumb_url>
http://launchpadsoftware.webs.com/ReleaseDates%20Web%20Data/gta5thumb.jpg
</thumb_url>
</game>
<game>
<id>2</id>
<title>Grand Theft Auto 5</title>
<date1>17th September 2013</date1>
<date2/>
<date3/>
<platforms>360, PS3</platforms>
<thumb_url>
http://api.androidhive.info/music/images/eminem.png
</thumb_url>
</game>
</games_list>
list_row.xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/background_card"
android:orientation="horizontal"
android:padding="5dip" >
<!-- ListRow Left sied Thumbnail image -->
<ImageView
android:id="@+id/list_image"
android:layout_width="50dip"
android:layout_height="50dip"
android:src="@drawable/gta5thumb"
android:padding="3dip"
android:background="@drawable/image_bg"
android:layout_centerVertical="true"/>
<!-- Title Of Song-->
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@id/list_image"
android:layout_toRightOf="@id/list_image"
android:text="Grand Theft Auto 5"
android:textColor="#040404"
android:textSize="18sp"
android:layout_marginLeft="4dp"
android:textStyle="bold"/>
<!-- Artist Name -->
<TextView
android:id="@+id/date1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/title"
android:textColor="#343434"
android:textSize="14sp"
android:layout_marginTop="1dip"
android:layout_toRightOf="@id/list_image"
android:layout_marginLeft="4dp"
android:text="17th September 2013" />
<TextView
android:id="@+id/date2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/date1"
android:textColor="#343434"
android:textSize="14sp"
android:layout_marginTop="1dip"
android:visibility="visible"
android:layout_marginLeft="4dp"
android:layout_toRightOf="@id/list_image"
android:text="17th September 2013" />
<TextView
android:id="@+id/date3"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textColor="#343434"
android:textSize="14sp"
android:layout_marginLeft="4dp"
android:text="17th September 2013"
android:layout_below="@+id/date2"
android:layout_toRightOf="@+id/list_image"/>
<!-- Rightend Duration -->
<TextView
android:id="@+id/platforms"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignTop="@id/title"
android:gravity="right"
android:text="360, PS3"
android:layout_marginRight="3dip"
android:textSize="12sp"
android:textColor="#10bcc9"
android:textStyle="bold"/>
<!-- Rightend Arrow -->
<ImageView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/arrow"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"/>
</RelativeLayout>
答案 0 :(得分:0)
在自定义列表适配器中,您应该隐藏没有文本的文本视图
textview.setVisibility(View.GONE);
并在xml中你应该使用
机器人:layout_centerVertical = “真”
用于包含文字的文字视图。
答案 1 :(得分:0)
我想你会动态地做,所以你可以在代码中完成它,只需将可见性设置为
textView.setVisible(View.GONE);