2013-03-20 22 views
5

Yanıp sönen imlecin rengini SearchView eylem çubuğunda değiştirmek istiyorum (uyumluluk için Actionbar Sherlock kullanıyorum). Şimdiye kadar, bir EditText öğesi için imlecin rengini değiştirmeyi başardım. This SO post bunu başarmak için bana yardımcı oldu ve ben EditText için kullanıyorum tarzı şuna benzer:Özel imleç rengi SearchView

<style name="CustomTheme" parent="Theme.Sherlock.Light"> 
    <item name="android:editTextStyle">@style/edittext_style</item> 
</style> 

<style name="edittext_style" parent="@android:style/Widget.EditText"> 
    <item name="android:textCursorDrawable">@drawable/red_cursor</item> 
</style> 

kırmızı imleç şuna benzer: Ben uygulanması bakmak vermedi

<shape xmlns:android="http://schemas.android.com/apk/res/android" 
     android:shape="rectangle" > 
    <gradient android:startColor="@color/darkRed" 
       android:endColor="@color/darkRed" /> 
    <size android:width="1dp" /> 
</shape> 

SearchView küçük aracı ve ben metin girişi için bir AutoCompleteTextView kullanır. AutoCompleteTextView EditText widget'ından türetildiğinden, stilin EditText için neden çalıştığını, ancak AutoCompleteTextView (ve dolayısıyla SearchView için) için neden olmadığını anlamıyorum.

İmlecin rengini SearchView widget'ında değiştirmeyi başarabilen biri var mı?

cevap

7

Sadece çalışan bir çözüm buldum.

sadece nitelik android geçersiz kılmak için gerekli
<style name="CustomTheme" parent="Theme.Sherlock.Light"> 
    ... 
    <item name="searchAutoCompleteTextView">@style/SearchViewStyle</item> 
    ... 
</style> 
+0

: textCursorDrawable SearchAutoCompleteTextView tema üzerinde ve bu gibi görünüyor böylece

<style name="edittext_style" parent="@android:style/Widget.EditText"> <item name="android:textCursorDrawable">@drawable/red_cursor</item> </style> 

ile

<style name="SearchViewStyle" parent="Widget.Sherlock.Light.SearchAutoCompleteTextView"> <item name="android:textCursorDrawable">@drawable/red_cursor</item> </style> 

değiştirir ve benim tema modifiye Bu çalışmalıydı. – MaTriXy

+0

Evet, ben de öyle yaptım. Teşekkürler – mvieghofer

+0

Varsayılan olanın rengini değiştirmek mümkün mü, ama çekilebilir değil mi? ColorControlActivated kullandım, ancak bu sadece metin karteli renginden daha fazla değişiyor ... –

İlgili konular