Android如何让TextView子元素随着父元素的背景变化而改变字体颜色?


重点在于

android:duplicateParentState="true"

首先创建两个XML:

父元素背景选择器 item_bg.xml

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android">    <item android:drawable="@color/black" android:state_pressed="true"></item>    <item android:drawable="@color/yellow"></item></selector>

子元素颜色选择器 text_bg.xml

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android">    <item android:color="@color/white" android:state_pressed="true"></item>    <item android:color="@color/black"></item></selector>


布局文件:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context=".MainActivity">    <LinearLayout        android:layout_width="match_parent"        android:layout_height="80dp"        <span style="color:#ff0000;">android:background="@drawable/item_bg"</span>        android:clickable="true">        <TextView            android:layout_width="match_parent"            android:layout_height="match_parent"            <span style="color:#ff0000;">android:duplicateParentState="true"</span>            android:gravity="center"            android:text="测试"            <span style="color:#ff0000;">android:textColor="@drawable/text_bg"</span>            android:textSize="30dp" />    </LinearLayout></RelativeLayout>


color.xml

<?xml version="1.0" encoding="utf-8"?><resources>    <color name="yellow">#FF9800</color>    <color name="black">#000000</color>    <color name="white">#FFFFFF</color></resources>




更多相关文章

  1. android开发中常用的五大布局
  2. Android系统自带样式(android:theme)
  3. Android(java)学习笔记106:Android(安卓)XML解析
  4. android 相对定位布局方向
  5. 修改Android(安卓)EditText光标颜色
  6. Activity背景色为透明的2种方法
  7. android layout属性介绍
  8. android 布局属性
  9. RelativeLayout属性

随机推荐

  1. AndTask v2.2 安安任务管理器 发布
  2. android: 大量开源项目源代码分享
  3. Android 得到连接热点的ip的方法
  4. Android为Layout设置最大宽度
  5. 萝卜小姐-Handler之系列sendMessage学习
  6. Android收起虚拟键盘
  7. android 云标签,文字墙(文字随机排列效果)
  8. Android SDK 1.5 "--core-library" build
  9. Android通用生命周期
  10. Android的定位策略