我将PreferenceActivity与封装的首选项屏幕一起使用。
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
android:key="prefs" >
<PreferenceScreen android:title="@string/pref_user_1" >
some text preference
</PreferenceScreen>
<PreferenceScreen android:title="@string/pref_user_2" >
some prefs
<PreferenceScreen android:title="@string/pref_user_2_1" >
some prefs
</PreferenceScreen>
</PreferenceScreen>
</PreferenceScreen>
我继承的preferenceActivity类有下面的onCreate方法
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Display the fragment as the main content.
getFragmentManager().beginTransaction()
.replace(android.R.id.content, new PrefsFragment()).commit();
}
并且有一个内部类
public static class PrefsFragment extends PreferenceFragment implements OnSharedPreferenceChangeListener {
public PrefsFragment() {
super();
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Load the preferences from an XML resource
addPreferencesFromResource(R.xml.myprefs);
...
}
在第一个屏幕中,我在操作栏中获得了正确的图标(即使我没有&lt;,我称之为Action Bar),但我想在下面的屏幕中更改图标。
我试过getActivity()。getActionBar()。setIcon(R.drawable.ic_act);在内部类中以及在preferenceActivity中,但它不会改变任何东西。
如果有可能,有人知道怎么做吗?