java - PreferenceCategory theme not applied to PreferenceScreen -


i saw lots of answers , threads regarding problem alone tutorials how create custom preferencecategory. nothing works me. theme not applied.

preferenceactivity class:

public class preferencesactivity extends preferenceactivity{  private mypreferencefragment preferences;  @override    public void oncreate(bundle savedinstancestate) {        super.oncreate(savedinstancestate);     preferences = new mypreferencefragment();     getfragmentmanager().begintransaction().replace(android.r.id.content, preferences).commit(); }  public static class mypreferencefragment extends preferencefragment {     @override     public void oncreate(final bundle savedinstancestate)     {         super.oncreate(savedinstancestate);         addpreferencesfromresource(r.layout.mypreferences);                 }       }    } 

androidmanifest:

<activity android:name="com.gpsy.preferences.preferencesactivity"             android:screenorientation="portrait" android:configchanges="keyboardhidden|orientation"                          android:theme="@style/custom"> </activity> 

styles.xml:

<resources xmlns:android="http://schemas.android.com/apk/res/android"> <style name="preferencelistheader" >     <item name="android:textcolor">#000000</item>     <item name="android:textstyle">bold</item>     <item name="android:textsize">12sp</item>     <item name="android:background">@color/gray</item>     <item name="android:paddingtop">6dp</item>     <item name="android:paddingbottom">6dp</item>     <item name="android:paddingleft">12dp</item> </style>  <style name="custom" parent="@android:theme.light.notitlebar">     <item name="android:listseparatortextviewstyle">@style/preferencelistheader</item>                </style> </resources> 

mypreferences.xml:

<?xml version="1.0" encoding="utf-8"?> <preferencescreen xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" >  <preferencecategory         android:title="@string/gps_settings">      <listpreference             android:key="nav_systems_preference"             android:title="@string/my_nav_app"             android:summary="summary_checkbox_preference"/>  </preferencecategory> </preferencescreen> 

also, tried apply theme following way without success:

settheme(r.style.custom); 

tryed change preferencecategory tag

<preferencecategory android:widgetlayout="@style/custom"         android:title="@string/gps_settings"> 

your theme not working because did not set android:layout_width , android:layout_weight nor inherited parent (which not given).

for <style name="preferencelistheader" >, add following:

<item name="android:layout_width">fill_parent</item> <item name="android:layout_height">wrap_content</item> 

you don't need settheme(r.style.custom); or android:widgetlayout="@style/custom" then. can't provide style android:widgetlayout, anyway. have provide layout resource contains textview. if choose use style (see above), don't need set layout.


Popular posts from this blog

How to calculate SNR of signals in MATLAB? -

c# - Attempting to upload to FTP: System.Net.WebException: System error -

ios - UISlider customization: how to properly add shadow to custom knob image -