Ich bekomme eine Error inflating class DropDownPreference beim Versuch, einen Einstellungsbildschirm in meiner App zu erstellen. Ich habe meiner Aktionsleiste eine Schaltfläche hinzugefügt, mit der ich die Einstellungsaktivität starten möchte, die ein Einstellungsfragment enthält, und zwar like this.Binäre XML-Datei Zeile # 13: Fehler beim Aufblasen der Klasse DropDownPreference
So habe ich meine SettingsActivity:
public class SettingsActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Display the fragment as the main content.
getFragmentManager().beginTransaction()
.replace(android.R.id.content, new SettingsFragment())
.commit();
}
public static class SettingsFragment extends PreferenceFragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Load the preferences from an XML resource
addPreferencesFromResource(R.xml.preferences);
}
}
}
Und die XML in Frage:
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android"
android:title="@string/pref_title"
android:layout_height="match_parent"
android:layout_width="match_parent">
<PreferenceCategory
android:key="pref_video"
android:title="@string/pref_video_title">
<DropDownPreference
android:key="pref_video_quality"
android:title="@string/pref_video_quality"
android:summary="@string/pref_summary_video_quality"
android:entries="@array/pref_entries_video_quality"
android:entryValues="@array/pref_entries_video_quality" />
</PreferenceCategory>
</PreferenceScreen>
ich von der Suche um wissen, dass dieser Fehler weist in der Regel etwas falsch an anderer Stelle im Code, aber ich bin mir wirklich nicht sicher wo mein Fehler sein könnte. Dies ist der Code in meinem MainActivity, die angeblich die SettingsActivity zu starten:
@Override
public boolean onCreateOptionsMenu(Menu menu){
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item){
switch (item.getItemId()) {
case R.id.preferences:
// Code to show SettingsActivity
Intent intent = new Intent(this, SettingsActivity.class);
startActivity(intent);
break;
default:
break;
}
return true;
}
Vielen Dank für jede Hilfe