下面是我的代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main3);
Bundle bundle = getIntent().getExtras();
assert bundle != null;
ArrayList<String> expTit = bundle.getStringArrayList("expTit");
ArrayList<Integer> expAmt =bundle.getIntegerArrayList("expAmt");
TextView t= findViewById(R.id.textView2);
TextView t2= findViewById(R.id.textView3);
StringBuilder builder = new StringBuilder();
if (expTit == null) throw new AssertionError();
String text="";
for (String details : expTit) {
text = text + details + "\n";
}
t.setText(text);
}
此处,arraylist来自另一个活动。当我按下按钮进入此活动时,应用程序崩溃。为什么会这样?
答案 0 :(得分:1)
您的logcat图像清楚地表明,使您的应用程序崩溃的异常是AssertionError,这意味着该行
assert bundle != null;
或行
if (expTit == null) throw new AssertionError();
是使您的应用崩溃的人。因此,基本上,您的Intent Extras捆绑包为null或expTit为null。