[英]How to pass date selected from CalendarView (current as default) into next Activity?
我当前有一个CalendarView活动,我希望用户从CalendarView中选择要传递给下一个片段的日期,从而该日期将显示在TextView中。 我已经看了很多遍,但是我不知道如何将日期提取到字符串中,然后在活动将传递意图的片段中再次检索它。
我尝试参考此答案: Android CalendarView:如何获取正确格式的日期? 并且我设法在LogCat中显示了日期,但它没有传递给片段。 如果可能的话,有人可以告诉我如何重新调整代码以将其传递给片段吗? 非常感谢你们!
如果在MainActivity中保留对Fragment
的引用,则可以像与其他任何对象一样与其进行交互。 一个例子:
MainActivity.java
MyFragment my_fragment;
...
public void onCreate() {
...
my_fragment = new MyFragment();
...
}
public void sendDateToFragment(Calendar date) {
my_fragment.setDate(date);
}
MyFragment.java
Calendar calendar;
...
public void setDate(Calendar date) {
// You can choose any type of object to accept,
// this is just an example.
calendar = date;
}
希望这可以帮助。
您可以通过捆绑包处理:
public void send(int day, int month, int year){
Bundle date = new Bundle();
date.putInt("Day", day);
date.putInt("Month", month);
date.putInt("Year", year);
Intent in=new Intent(Activity.this,SecondActivity.class);
in.putExtras(date);
startActivity(in);
}
在第二个活动中:
public Date get(){
Bundle second = getIntent().getExtras();
return new Date(second.getInt("Year"),
second.getInt("Month"),second.getInt("Day"));
}
它会返回您的日期,您可以调用第二个活动Date date = get();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.