使用ListPreference时应用程序崩溃

时间:2016-11-18 19:45:41

标签: android android-layout android-preferences

每当我尝试使用List首选项时,应用程序都会崩溃。当我删除ListPreference时,settingsActivity似乎运行正常。

我的xml代码:

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:title="@string/settings_title">

    <PreferenceCategory
        android:title="@string/settings_title">
    <com.takisoft.fix.support.v7.preference.SwitchPreferenceCompat
        android:id="@+id/enter_key_pref"
        android:defaultValue="true"
        android:key="@string/settings_enterPreference_key"
        android:summaryOff="@string/settings_enterPreference_summaryOff"
        android:summaryOn="@string/settings_enterPreference_summaryOn"
        android:title="@string/settings_enterPreference_label" />
    </PreferenceCategory>

    <PreferenceCategory
        android:title="@string/settings_mic">
    <com.takisoft.fix.support.v7.preference.SwitchPreferenceCompat
        android:id="@+id/mic_input"
        android:defaultValue="true"
        android:key="@string/setting_mic_key"
        android:summaryOff="@string/setting_mic_off"
        android:summaryOn="@string/setting_mic_on"
        android:title="@string/setting_mic_input"/>
    </PreferenceCategory>

    <PreferenceCategory
        android:title="@string/settings_speech">
    <com.takisoft.fix.support.v7.preference.SwitchPreferenceCompat
        android:id="@+id/speech_pref"
        android:defaultValue="true"
        android:key="@string/settings_speechPreference_key"
        android:summaryOff="@string/settings_enterPreference_summaryOff"
        android:summaryOn="@string/settings_enterPreference_summaryOn"
        android:title="@string/settings_speechPreference_label" />
    </PreferenceCategory>

    <com.takisoft.fix.support.v7.preference.SwitchPreferenceCompat
        android:id="@+id/speech_always"
        android:defaultValue="false"
        android:key="@string/settings_speechAlways_key"
        android:summaryOff="@string/settings_enterPreference_summaryOff"
        android:summaryOn="@string/settings_enterPreference_summaryOn"
        android:title="@string/settings_speechAlways_label" />
    <ListPreference
        android:title="@string/language"
        android:summary="Select a Language"
        android:key="lang"
        android:entries="@array/entries_text"
        android:entryValues="@array/entries_values">

    </ListPreference>

My array list:

    <string-array name="entries_text">
        <item>option 1</item>
        <item>option 2</item>
        <item>option 3</item>
    </string-array>

    <string-array name="entries_values">
        <item>item 1</item>
        <item>item 2</item>
        <item>item 3</item>
    </string-array>

删除此Listpreference时,一切正常。 可能是崩溃的原因是什么?

我的错误日志:

11-19 01:07:20.672: E/wifi(782): reply: RSSI=-45
11-19 01:07:20.672: E/wifi(782): LINKSPEED=72
11-19 01:07:20.672: E/wifi(782): NOISE=9999
11-19 01:07:20.672: E/wifi(782): FREQUENCY=0
11-19 01:07:23.525: E/dalvikvm(11558): Could not find class 'android.util.ArrayMap', referenced from method com.android.tools.fd.runtime.MonkeyPatcher.monkeyPatchExistingResources
11-19 01:07:23.525: E/dalvikvm(11558): Could not find class 'android.util.ArrayMap', referenced from method com.android.tools.fd.runtime.MonkeyPatcher.pruneResourceCache
11-19 01:07:23.615: E/dalvikvm(11558): Could not find class 'android.graphics.drawable.RippleDrawable', referenced from method android.support.v7.widget.AppCompatImageHelper.hasOverlappingRendering
11-19 01:07:23.685: E/wifi(782): reply: RSSI=-42
11-19 01:07:23.685: E/wifi(782): LINKSPEED=72
11-19 01:07:23.685: E/wifi(782): NOISE=9999
11-19 01:07:23.685: E/wifi(782): FREQUENCY=0
11-19 01:07:26.688: E/wifi(782): reply: RSSI=-44
11-19 01:07:26.688: E/wifi(782): LINKSPEED=72
11-19 01:07:26.688: E/wifi(782): NOISE=9999
11-19 01:07:26.688: E/wifi(782): FREQUENCY=0
11-19 01:07:27.980: E/dalvikvm(11558): Could not find class 'android.transition.Transition', referenced from method android.support.v7.widget.MenuPopupWindow.setEnterTransition
11-19 01:07:27.980: E/dalvikvm(11558): Could not find class 'android.transition.Transition', referenced from method android.support.v7.widget.MenuPopupWindow.setExitTransition
11-19 01:07:29.141: E/AndroidRuntime(11558): FATAL EXCEPTION: main
11-19 01:07:29.141: E/AndroidRuntime(11558): java.lang.RuntimeException: Unable to start activity ComponentInfo{org.fossasia.susi.ai/org.fossasia.susi.ai.activities.SettingsActivity}: android.view.InflateException: Binary XML file line #3: Error inflating class fragment
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2186)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2236)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.app.ActivityThread.access$600(ActivityThread.java:145)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1238)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.os.Handler.dispatchMessage(Handler.java:99)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.os.Looper.loop(Looper.java:137)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.app.ActivityThread.main(ActivityThread.java:5099)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at java.lang.reflect.Method.invokeNative(Native Method)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at java.lang.reflect.Method.invoke(Method.java:511)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:803)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:570)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at dalvik.system.NativeStart.main(Native Method)
11-19 01:07:29.141: E/AndroidRuntime(11558): Caused by: android.view.InflateException: Binary XML file line #3: Error inflating class fragment
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.view.LayoutInflater.inflate(LayoutInflater.java:466)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:284)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at org.fossasia.susi.ai.activities.SettingsActivity.onCreate(SettingsActivity.java:17)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.app.Activity.performCreate(Activity.java:5117)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1081)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2150)
11-19 01:07:29.141: E/AndroidRuntime(11558):    ... 11 more
11-19 01:07:29.141: E/AndroidRuntime(11558): Caused by: java.lang.ClassCastException: java.lang.Boolean cannot be cast to java.lang.String
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.app.SharedPreferencesImpl.getString(SharedPreferencesImpl.java:224)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v7.preference.Preference.getPersistedString(Preference.java:1404)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v7.preference.ListPreference.onSetInitialValue(ListPreference.java:259)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v7.preference.Preference.dispatchSetInitialValue(Preference.java:1327)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v7.preference.Preference.onAttachedToHierarchy(Preference.java:1098)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v7.preference.Preference.onAttachedToHierarchy(Preference.java:1109)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v7.preference.PreferenceGroup.addPreference(PreferenceGroup.java:191)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v7.preference.PreferenceGroup.addItemFromInflater(PreferenceGroup.java:123)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v7.preference.PreferenceInflater.rInflate(PreferenceInflater.java:360)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v7.preference.PreferenceInflater.inflate(PreferenceInflater.java:167)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v7.preference.PreferenceInflater.inflate(PreferenceInflater.java:117)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v7.preference.PreferenceManager.inflateFromResource(PreferenceManager.java:122)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v14.preference.PreferenceFragment.addPreferencesFromResource(PreferenceFragment.java:437)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at org.fossasia.susi.ai.activities.SettingsActivity$ChatSettingsFragment.onCreatePreferences(SettingsActivity.java:25)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v14.preference.PreferenceFragment.onCreate(PreferenceFragment.java:231)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.app.Fragment.performCreate(Fragment.java:1677)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:854)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1035)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.app.FragmentManagerImpl.addFragment(FragmentManager.java:1137)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.app.Activity.onCreateView(Activity.java:4730)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v4.app.BaseFragmentActivityHoneycomb.onCreateView(BaseFragmentActivityHoneycomb.java:36)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:75)
11-19 01:07:29.141: E/AndroidRuntime(11558):    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:680)
11-19 01:07:29.141: E/AndroidRuntime(11558):    ... 20 more
11-19 01:07:29.692: E/wifi(782): reply: RSSI=-44
11-19 01:07:29.692: E/wifi(782): LINKSPEED=72
11-19 01:07:29.692: E/wifi(782): NOISE=9999
11-19 01:07:29.692: E/wifi(782): FREQUENCY=0
11-19 01:07:32.705: E/wifi(782): reply: RSSI=-43
11-19 01:07:32.705: E/wifi(782): LINKSPEED=72
11-19 01:07:32.705: E/wifi(782): NOISE=9999
11-19 01:07:32.705: E/wifi(782): FREQUENCY=0

0 个答案:

没有答案