我正在尝试按如下方式创建对话框首选项
<DialogPreference
android:key="cachePref"
android:dialogMessage="Testing message"
android:dialogTitle="Title Test"
android:positiveButtonText="positive"
android:summary="Clear images save to disk"
android:title="Clear Image Cache" />
但是当活动运行时,强制关闭并出现以下错误
11-01 01:21:18.820: E/AndroidRuntime(19644): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.bakasura/com.bakasura.SettingsPreferences}: android.view.InflateException: Binary XML file line #71: Error inflating class java.lang.reflect.Constructor
答案 0 :(得分:2)
这看起来像Android Issue 3972: InstantiationException when using DialogPreference:
DialogPreference
总是一个抽象类,因此它不应该被实例化 - 但反射代码中的错误允许这样做直到Android 1.6。之后,它正确抛出异常。
解决方法是创建一个扩展DialogPreference
的自定义类,并将其用作问题的suggested in comment 9。