首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在另一节课上从timePicker那里获得时间?

如何在另一节课上从timePicker那里获得时间?
EN

Stack Overflow用户
提问于 2018-08-21 13:45:08
回答 2查看 64关注 0票数 0
代码语言:javascript
运行
复制
public class TimePickerClass  extends Activity{

public TimePicker mTimePicker;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_time_picker_class);
Button saveTimeButton;
mTimePicker = (TimePicker) findViewById(R.id.timePicker);
mTimePicker.setIs24HourView(true);
saveTimeButton = (Button) findViewById(R.id.next_button);
saveTimeButton.setOnClickListener(v -> {
    getTime();
});

  public String getTime(){
//TODO
int hour;
int minute;
hour = mTimePicker.getHour();
minute = mTimePicker.getMinute();
String message;
message = "Time:" + hour +" : " + minute;
return message;
}

你好!我有一个类,在这个类中,我使用TimePicker获取用户选择的时间。我正在尝试这样做:

代码语言:javascript
运行
复制
TimePickerClass time = new TimePickerClass();
String userTime = time.getTime();

但这不起作用,应用程序已关闭。那么,如何实现这一点呢?错误如下:

代码语言:javascript
运行
复制
FATAL EXCEPTION: main
          Process: com.gfc.glanceclock, PID: 32256
          java.lang.NullPointerException: Attempt to invoke virtual method 'int android.widget.TimePicker.getHour()' on a null object reference
EN

Stack Overflow用户

发布于 2018-08-21 14:02:06

您正在尝试自己创建活动,这就是为什么没有调用必要的生命周期方法,您会得到NullPointerException

如果您想从您的TimePickerClass活动中获取时间,请启动它以获取结果,例如:

代码语言:javascript
运行
复制
Intent intent = new Intent(context, TimePickerClass.class)
startActivityForResult(intent, REQUEST_CODE)

以及TimePickerClass活动中的set结果:

代码语言:javascript
运行
复制
mTimePicker.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener() {

            public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
                 Intent intent = new Intent();
                 intent.putExtra("time", time.getTime());
                 setResult(RESULT_OK, intent);
                 finish();
            }
        });

然后,您可以在

代码语言:javascript
运行
复制
protected void onActivityResult(int requestCode, int resultCode, Intent data)

方法。

你可以阅读更多关于它的here

票数 1
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51942293

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档