我将long
值和String
值作为额外内容从列表活动发送到agenmin活动。但在java.lang.NullPointerException
获取line 120
long baba1 = intent1.getExtras().getLong("baba",0); //line number 120
从列表活动发送
// long id from from listview
Intent i = new Intent(list.this, agenmin.class);
i.putExtra("baba", id);
startActivity(i);
//int position from listview
String c= Integer.toString(position);
Intent i1 = new Intent(list.this, agenmin.class);
i1.putExtra("abc", c);
startActivity(i1);
接收方agenmin
Intent i1 = getIntent();
String easyPuzzle;
easyPuzzle=i1.getStringExtra("abc");
textView2.setText(easyPuzzle);
Toast.makeText(getApplicationContext(), "Position " + (mess)+" ROWID " +(easyPuzzle), Toast.LENGTH_LONG).show();
Intent intent1 = getIntent();
long baba1 = intent1.getExtras().getLong("baba",0);
String strLong1 = Long.toString(baba1);
textView3.setText(strLong1);
logcat的:
05-27 20:43:45.169: E/AndroidRuntime(593): FATAL EXCEPTION: main
05-27 20:43:45.169: E/AndroidRuntime(593): java.lang.NullPointerException
05-27 20:43:45.169: E/AndroidRuntime(593): at com.indianic.demo.calendark.agenmin$1.onClick(agenmin.java:120)
我开始了两次agenmin活动,原因是“java.lang.NullPointerException
line 120
答案 0 :(得分:1)
试试这个:
PendingIntent intent1 = PendingIntent.getActivity(context, 0, intent,
PendingIntent.FLAG_UPDATE_CURRENT);
答案 1 :(得分:0)
为什么你有两个意图开始agenmin
活动?
这样您就可以两次启动agenmin
活动,但每次启动只需要一个额外的活动。然后无法获取第二个额外内容,并在尝试使用其值时崩溃。
这样做:
Intent i = new Intent(list.this, agenmin.class);
i.putExtra("baba", id);
i.putExtra("abc", c);
startActivity(i);
我建议你阅读更多关于意图是什么以及它们如何运作的内容。例如here。要开始不同的活动,您只需要一个意图。你可以随意添加多少额外内容。