我將背景選擇器設置爲ViewGroup,並且此ViewGroup具有子TextView,我將選擇器設置爲textColor,然後按下此ViewGroup,TextView'textColor在按下狀態下關閉。Android背景選擇器和文本顏色選擇器衝突
-2
A
回答
2
嘗試......
1.創建背景繪製了一個ViewGroup
表1.A顏色資源:(colors.xml)
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#3F51B5</color>
<color name="colorPrimaryDark">#303F9F</color>
<color name="colorAccent">#FF4081</color>
<color name="blue_grey_200">#B0BEC5</color>
</resources>
1.B.的ViewGroup正常狀態:(drawable_viewgroup_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="@android:color/transparent" />
<stroke
android:width="1dp"
android:color="@color/blue_grey_200" />
</shape>
1.C.的ViewGroup按下狀態:(drawable_viewgroup_press.xml)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="@color/blue_grey_200" />
<stroke
android:width="0.7dp"
android:color="@color/blue_grey_200" />
</shape>
1.D. ViewGroup中選擇背景:(selector_viewgroup.xml)
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/drawable_viewgroup_press" android:state_pressed="true"/>
<item android:drawable="@drawable/drawable_viewgroup_press" android:state_focused="true"/>
<item android:drawable="@drawable/drawable_viewgroup_normal"/>
</selector>
2.一個ViewGroup的孩子創建選擇文本顏色(的TextView) selector_viewgroup_child_textcolor.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:state_pressed="false" android:color="@color/colorAccent"/>
<item android:state_focused="true" android:state_pressed="true" android:color="@android:color/white"/>
<item android:state_focused="false" android:state_pressed="true" android:color="@android:color/white"/>
<item android:color="@color/colorAccent"/>
</selector>
3.將選擇可繪製到ViewGroup中和他們的孩子
<LinearLayout
android:id="@+id/l1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/selector_viewgroup"
android:clickable="true"
android:padding="@dimen/margin8">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Hello World!"
android:textColor="@drawable/selector_viewgroup_child_textcolor" />
</LinearLayout>
4.結果
正常狀態:
按下狀態:
0
,那是因爲你的TextView顏色與選擇文件 「selector_viewgroup_child_textcolor.xml」 有關,你已經設置了按狀態和正常狀態,如果你想textview的顏色是不可變的,請確保你的textcolor不是指任何sele tor文件
相關問題
- 1. Android LinearLayout選擇器背景顏色
- 2. UIDate選擇器的背景顏色
- 3. reveal.js背景顏色選擇
- 4. UITextField選擇背景顏色
- 5. QTableView - 選擇背景顏色
- 6. android號碼選擇器文本顏色
- 7. 在當前瀏覽器中獲取文本選擇顏色和背景顏色
- 8. 自定義選擇器,背景顏色和android中的imageview
- 9. Android選擇器和文字顏色
- 10. Android GridView選擇背景顏色
- 11. Kendo UI Editor - 更改字體顏色選擇器和背景顏色選擇器的默認顏色
- 12. Android CalendarView選擇器背景
- 13. android linearlayout背景選擇器
- 14. 背景選擇器無(android)
- 15. Android ListView選擇器同時更改背景圖像和文本顏色
- 16. 顏色選擇器在android?
- 17. 使用顏色選擇器更改網站背景顏色
- 18. 顏色選擇器
- 19. EditText文本選擇器背景塊?
- 20. 使用選擇器設置listview groupview和childview的背景顏色?
- 21. recyclerview的文本顏色選擇器
- 22. 選擇未禁用選項時更改選擇背景顏色
- 23. 在選擇器中添加背景色
- 24. WPF TabItem選擇時背景顏色?
- 25. 更改菜單背景顏色選擇
- 26. 更改ListView的背景選擇顏色?
- 27. Laravel表::選擇更改背景顏色
- 28. 背景顏色 - 不能看到選擇
- 29. 點擊選擇背景顏色
- 30. 更改背景顏色選擇
非常感謝你,我已經解決它作爲你的方法。 – liangzhitao
請接受我的回答,如果對你有用。 –