这是我的商店活动课程中的代码,每次运行它时,它都会崩溃,我不知道为什么。我只是Android工作室的初学者,所以我只是在尝试制作应用程序。
Intent i = getIntent();
Bundle b = i.getExtras();
Changes here int Score = b.getInt("Score");
String [][] QnA = (String[][]) b.getSerializable("QnA");
答案 0 :(得分:0)
更改此行:
final Button buy1 = (Button) findViewById(id.buy_1);
到
final Button buy1;
您的onCreate
应如下所示:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(layout.activity_shop);
buy1 = (Button)findViewById(id.buy_1);
buy1.setVisibility(View.INVISIBLE);
}
您的应用因此行而崩溃:
final Button buy1 = (Button) findViewById(id.buy_1);
您想要正确初始化按钮吗?但是,在创建活动的新实例时执行该语句(我的意思是在调用构造函数时,而不是onCreate
)。当时,活动中的观点尚未确定!这导致findViewById
找不到视图,因此返回null
。
现在在onCreate
,您尝试将buy_1
的可见性设置为不可见。但是,由于buy_1
为null,因此无需设置!因此,抛出空指针异常并且您的应用程序崩溃。