Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android DialogPreference上的日期选择器和时间选择器_Android_Datepicker_Android Preferences_Android Theme_Timepicker - Fatal编程技术网

Android DialogPreference上的日期选择器和时间选择器

Android DialogPreference上的日期选择器和时间选择器,android,datepicker,android-preferences,android-theme,timepicker,Android,Datepicker,Android Preferences,Android Theme,Timepicker,我有一个PreferenceFragment,它通过调用addPreferencesFromResource(R.xml.preferences\u main)加载首选项 在preferences_main.xml文件中,我有一个名为TimePreference的自定义首选项,它扩展了DialogPreference。TimePreference只包含一个时间选择器(也尝试了DatePicker)。显示时,时间选择器现在是另一种格式。它不是微调器,而是具有EditText视图和上/下箭头的版本。

我有一个PreferenceFragment,它通过调用addPreferencesFromResource(R.xml.preferences\u main)加载首选项

在preferences_main.xml文件中,我有一个名为TimePreference的自定义首选项,它扩展了DialogPreference。TimePreference只包含一个时间选择器(也尝试了DatePicker)。显示时,时间选择器现在是另一种格式。它不是微调器,而是具有EditText视图和上/下箭头的版本。真正的问题是那些箭头是白色的,文本是白色的,所有这些都在一个白色的背景对话框上

如果我在一个活动上放置一个时间选择器,它就是主题微调器样式

我不明白为什么这只发生在DialogPreference上,而不发生在活动上。它好像失去了所有的造型

我的基本主题是theme.AppCompat.Light,我尝试了其他两个主题,结果都是一样的

编辑:我的版本是11,目标是19

有人有什么想法吗

public class TestPreference extends DialogPreference {

Button btn;
TimePicker tp;

public TestPreference(Context context, AttributeSet attrs) {
    super(context, attrs);
    // TODO Auto-generated constructor stub
}

@Override
protected View onCreateDialogView() {
    tp = new TimePicker(getContext().getApplicationContext());
    return tp;
}
}


您使用的应用程序上下文不包含有关为应用程序选择的主题/样式的任何信息

尝试按如下所示更改
时间选择器的初始化,看看它是否工作:

tp = new TimePicker(getContext());

此外,在创建
TestPreference
的实例时,在其构造函数中传递活动的引用,例如:
YourActivity。这

在eclipse崩溃之前,我只是在尝试,它似乎正在工作。我将在几分钟后告诉您更多信息。另外,TestPreference是从preferences xml创建的,所以我如何将我的活动引用传递给它?啊,那么只需坚持我所说的初始化TimePicker.waqaslam,这就是解决方案。。。风格仍然不同于标准,这是因为values-14中的风格不同。我改变了风格,得到了预期的布局。通过删除.getApplicationContext()解决了字体和箭头为白色的问题。谢谢非常感谢你!你是救命恩人@waqaslam你能帮我吗