我正在制作一款使用TimePicker的应用,这是我第一次使用它。我的代码如下:
final Dialog mTimeDialog = new Dialog(this);
TimePicker timePicker = (TimePicker)mTimeDialog.findViewById(R.id.timePicker);
TimePicker timePicker1 = (TimePicker)mTimeDialog.findViewById(R.id.timePicker1);
int starthour = timePicker.getCurrentHour();
int startminute = timePicker.getCurrentMinute();
int finishhour = timePicker1.getCurrentHour();
int finishminute = timePicker1.getCurrentMinute();
但是当我尝试运行它时,我遇到了异常。当我按下保存按钮以触发包含它的onClick
时,我得到了这个:
Caused by: java.lang.NullPointerException
at com.csam.hourtracker.hourentry.onClick(hourentry.java:40)
任何帮助都会很棒!
答案 0 :(得分:2)
你有以下
final Dialog mTimeDialog = new Dialog(this);
TimePicker timePicker = (TimePicker)mTimeDialog.findViewById(R.id.timePicker);
在初始化TimerPicker的
之前,您尚未将布局内容设置为Dialog你错过了
mTimeDialog.setContentView(yourview);
因此,你的时间戳是空的,导致NPE。
findViewById
查找当前的infalted布局中提到的id的视图。我相信你的对话框有自定义布局。您需要先扩充布局,然后初始化视图。