Android 无法在首选项的自定义对话框中使用时间选择器
由于我想自定义自己的timepicker对话框,所以我不使用提供的timepickerdialog。然而,我发现如果我优先调用对话框,它是不起作用的。但如果我把它放在一个普通的xml布局中,这是可行的。eclipse没有检查代码中的错误,但如果我在phone中运行,则从下面的粗体行开始显示nullpointerexceptionAndroid 无法在首选项的自定义对话框中使用时间选择器,android,android-preferences,android-dialog,Android,Android Preferences,Android Dialog,由于我想自定义自己的timepicker对话框,所以我不使用提供的timepickerdialog。然而,我发现如果我优先调用对话框,它是不起作用的。但如果我把它放在一个普通的xml布局中,这是可行的。eclipse没有检查代码中的错误,但如果我在phone中运行,则从下面的粗体行开始显示nullpointerexception public class Prefs extends PreferenceActivity{ Preference time; void openC
public class Prefs extends PreferenceActivity{
Preference time;
void openCustomDialog() {
AlertDialog.Builder customDialog = new AlertDialog.Builder(Prefs.this);
customDialog.setTitle("Set Delay Time");
LayoutInflater layoutInflater = (LayoutInflater) getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = layoutInflater.inflate(R.layout.timepicker, null);
TimePicker minute = (TimePicker) findViewById(R.id.mPicker);
**minute.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener()** {
public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
}
});
minute.setCurrentMinute(usb.minute);
TimePicker second = (TimePicker) findViewById(R.id.sPicker);
second.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener() {
public void onTimeChanged(TimePicker view, int hourOfDay, int second) {
}
});
second.setCurrentMinute(usb.second);
customDialog.setPositiveButton("OK",new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
}
});
customDialog.setView(view);
customDialog.show();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.prefs);
time = (Preference)findPreference("time");
time.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference arg0) {
openCustomDialog();
return true;
}
});
}
这主要是猜测,但我认为错误的前一行应该是
view.findViewById(R.id.mPicker)
。我检查了几次,但仍然没有发现错误