我正在启动一项活动,并希望将Date(Time)
值传递给它。我已使用i.putExtra("noteName", "Hello World")
传递了所有其他参数,但我对如何传递日期值并将其作为getExtra()
的日期检索无能为力。
我可以轻松使用i.putExtra("noteDate",noteDate);
但是我如何在Activity
的{{1}}中检索它;我没有看到onCreate()
?
我应该将其转换为extras.getDate()
然后返回(Float
)吗?
由于
答案 0 :(得分:39)
使用date.getTime()
和date.setTime()
并将其作为长传输。
i.putExtra("date", date.getTime());
Date d = new Date();
d.setTime(i.getLongExtra("date", -1));
答案 1 :(得分:2)
更好地转换为long
,使用putExtra(String name, long value)
然后重新创建,然后返回新的Activity
。
答案 2 :(得分:1)
我只是使用了
i.putExtra("noteDate",myDate);
然后是我使用的活动:
Date dt = new Date(extras.getString("noteDate"));
它就像一个魅力!?这有危险吗?假设始终在所有设备上正确解析日期?
答案 3 :(得分:0)
而不是
i.putExtra("date", date.getTime());
Date d = new Date();
d.setTime(i.getLongExtra("date", -1));
USE:如果您使用日历而不是日期来获取长值
i.putExtra("date", date.getTime().getTime);
Date d = new Date();
d.setTime(i.getLongExtra("date", -1));