0

我正在尝试通过从活动 1 到活动 2 的意图从 CalendarView 传递选定的日期。活动 no2 打开没有任何问题,但未显示所选日期。

这是活动 no1 的代码:

         String syear = Integer.toString(year);
         String smonth = Integer.toString(month);
         String sday= Integer.toString(day);

         Intent myIntent = new Intent(CalendarActivity.this, CalendarDate.class);
         Bundle extras = new Bundle();
         myIntent.putExtra(syear, "currentyear");
         myIntent.putExtra(smonth,"currentmonth");
         myIntent.putExtra(sday,"currentday");
         myIntent.putExtras(extras);
         CalendarActivity.this.startActivity(myIntent);

这是活动 2 的代码:

Bundle extras = getIntent().getExtras();

    String dyear = extras.getString("currentyear");
    String dmonth = extras.getString("currentmonth");
    String dday = extras.getString("currentday");


    TextView textView = new TextView(this);
    textView.setTextSize(40);
    textView.setText(dday);
    textView.setText(dmonth);
    textView.setText(dyear);

    setContentView(textView);

我究竟做错了什么 ?

4

2 回答 2

3

它应该是

    myIntent.putExtra("currentyear",syear);
    myIntent.putExtra("currentmonth",smonth);
    myIntent.putExtra("currentday",sday);

也使用append

    textView.append(dday);
    textView.append(dmonth);
    textView.append(dyear);
于 2013-09-02T14:40:43.180 回答
0

在活动中没有 1 有这样的。

     myIntent.putExtra("currentyear", syear);
     myIntent.putExtra("currentmonth",smonth);
     myIntent.putExtra("currentday",sday);
     myIntent.putExtras(extras);

并且在第 2 项活动中,从额外内容中读取时始终放置空检查。

有这样的。

Bundle extras = getIntent().getExtras();
if(extras!=null){
String dyear = extras.getString("currentyear");
String dmonth = extras.getString("currentmonth");
String dday = extras.getString("currentday");
}


TextView textView = new TextView(this);
textView.setTextSize(40);
textView.setText(dday);
textView.setText(dmonth);
textView.setText(dyear);

setContentView(textView);
于 2013-09-02T14:47:50.320 回答