Terve,
Olen tässä hieman koittanut tutustua Androidin tyylien määrittelyyn.
Törmäsin tosin ongelmaan, Android Studion mukana tulevan valmiin templaten ( Master/Detail Flow ) kanssa.
Olen yrittänyt määrittää perus ListView -widgetin ITEM:lle tyyli määrityksiä, mutta jostain syystä valikon aktiivi kenttä ei vaihda väriänsä.
Kuten kuvasta näkyy, pysyy valittu item:in väri turkoosina. Olisin siis halunnut muuttaa tuon väriä siniseksi.
Käsitääkseni alla oleva selectori määritys pitäisi muuttaa valinnan väri siniseksi, jota se ei siis kumminkaan nytten tee.
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_enabled="false" android:state_focused="true" android:drawable="@color/darkgray" /> <item android:state_activated="true" android:drawable="@color/blue" /> <item android:state_pressed="true" android:drawable="@color/blue" /> <item android:state_focused="true" android:drawable="@color/blue" /> <item android:state_selected="true" android:drawable="@color/blue" /> <item android:state_checked="true" android:drawable="@color/blue" /> <item android:state_enabled="true" android:drawable="@color/blue" /> <item android:state_hovered="true" android:drawable="@color/blue" /> <item android:state_window_focused="true" android:drawable="@color/blue" /> <item android:state_single="true" android:drawable="@color/blue" /> </selector>
Ja vielä ListView:n oma määritys, jossa listSelector määritetään
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="android:windowBackground">@color/darkgray</item> <item name="android:listViewStyle">@style/ListViewStyle</item> </style> <style name="ListViewStyle" parent="@android:style/Widget.ListView"> <item name="android:background">@color/darkgray</item> <item name="android:cacheColorHint">@android:color/transparent</item> <item name="android:divider">@android:color/transparent</item> <item name="android:dividerHeight">0dp</item> <item name="android:listSelector">@drawable/listitem</item> </style>
Aihe on jo aika vanha, joten et voi enää vastata siihen.