我的android:background
标记存在问题,我只能使用一次,而我的TextView
需要不止一次的功能。更多详情如下:
我得到3 TextView
:
<LinearLayout android:id="@+id/info" android:layout_marginTop="68dp"
android:layout_width="wrap_content" android:layout_height="fill_parent"
android:layout_centerHorizontal="true"
android:orientation="horizontal">
<TextView android:id="@+id/tour1"
android:paddingLeft="10dp" android:paddingRight="10dp"
android:paddingTop="8dp" android:paddingBottom="8dp"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:background="@drawable/back"
android:gravity="center"
android:text="Tour \n disponibili \n 21"/>
<TextView android:id="@+id/tour2" android:layout_toRightOf="@+id/tour1"
android:paddingLeft="10dp" android:paddingRight="10dp"
android:paddingTop="8dp" android:paddingBottom="8dp"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:background="@drawable/back"
android:gravity="center"
android:text="Tour \n prenotabili \n 16"
android:layout_marginLeft="16dp"/>
<TextView android:id="@+id/tour3" android:layout_toRightOf="@+id/tour2"
android:paddingLeft="10dp" android:paddingRight="10dp"
android:paddingTop="8dp" android:paddingBottom="8dp"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:background="@drawable/back"
android:gravity="center"
android:text="Tour \n preferiti \n 3"
android:layout_marginLeft="16dp"/>
</LinearLayout>
显示在这里:
使用TextView
文件夹中包含的此文件back.xml
获取res/drawable
边框:
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<!--<solid android:color="#ffffff" />-->
<stroke android:width="1dip" android:color="#4fa5d5"/>
</shape>
由于我已经使用背景标记输入back.xml
文件并为TextView
创建矩形边框,因此我不知道如何将其用于我的其他需求, :
据我所知,我只能使用标记background
执行此操作,该标记已用于获取back.xml
drawable。
我如何满足我的需求?
答案 0 :(得分:1)
您提供的示例最有可能通过“drawableTop”属性实现。就像你说的,每个属性只能使用一次,所以如果你想使用不同的图像并让它们成为背景的一部分,你需要为每个视图提供不同的背景资源。
对于圆角,在标签下方的back.xml文件中添加标签,并使用“android:radius”定义半径。
要创建一个也对状态更改做出反应的选择器(假设您希望在按下视图时边框变为红色),请使用:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" >
<shape android:shape="rectangle" >
<stroke android:width="1dip" android:color="#ff0000"/>
<corners android:radius="5dip" />
</shape>
</item>
<item>
<shape android:shape="rectangle" >
<stroke android:width="1dip" android:color="#4fa5d5"/>
<corners android:radius="5dip" />
</shape>
</item>
</selector>
将它放在drawable文件夹中并指向“background”属性。