nom*_*mis 2 android android-emulator android-layout
我正在尝试为项目(如果选择)背景着色.我正在使用Android模拟器.我有一组XML文件res/drawable.
background.xml:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/pressed" />
<item android:drawable="@drawable/normal" />
</selector>
Run Code Online (Sandbox Code Playgroud)
normal.xml:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#000000" />
</shape>
Run Code Online (Sandbox Code Playgroud)
pressed.xml:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#33ffff" />
</shape>
Run Code Online (Sandbox Code Playgroud)
还有我的list_item.xml,有...我的项目:
<TextView ... android:background="@drawable/background" android:padding="6dp" />
好吧,在模拟器state_pressed="true"工作,但我希望所选项目保持彩色.所以,而不是state_pressed我尝试state_activated...但嘿......也不行.我的物品仍然是黑色......
需要一些帮助 :) !
谢谢
我相信state_activated就是你要找的东西.
在listselector.xml中:
<item android:state_activated="true" android:drawable="@drawable/whatever" />
<item android:state_activated="false" android:drawable="@android:color/transaprent" />
Run Code Online (Sandbox Code Playgroud)
然后在您的代码中,实现onItemClickListener并将您的视图设置为激活:
view.setActivated(true);
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助.
汤姆
| 归档时间: |
|
| 查看次数: |
7495 次 |
| 最近记录: |