Tuesday, January 17, 2012

PreferenceActivity has missing icon on Honeycomb


I've created a simple PreferenceActivity containing a ListActivity. (code added at the end for completeness) but it shows up differently on a 2.3 device and on a Galaxy Tab 10.1" (Android 3.2) (see images below).



My questions are:



  • Can I also get the icon with the right arrow in Honeycomb?

  • Can I avoid the empty black line between the title of the activity and the ListPreference



Android 2.3 screenshot Android 3.2 screenshot




public class TestPreference extends PreferenceActivity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setPreferenceScreen(createPreferenceHierarchy());
}

private PreferenceScreen createPreferenceHierarchy()
{
// Root
PreferenceScreen root = getPreferenceManager().createPreferenceScreen(this);
/*
* select language
*/
ListPreference listPref = new ListPreference(this);
listPref.setKey("Language");
listPref.setEntries(new String[]{"eng", "fra"});
listPref.setEntryValues(new String[]{"eng", "fra"});
listPref.setValue("eng");//TODO: assumes English is a supported language!?
listPref.setSummary("You can select your language here");
listPref.setTitle("Select Language");
root.addPreference(listPref);


return root;
}
}

No comments:

Post a Comment