public class FindBeerActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_find_beer);
}
Spinner color = (Spinner) findViewById(R.id.color);
TextView brands = (TextView) findViewById(R.id.brands);
public void onClickFindBeer(View view) {
//Get the selected item in the spinner
String beerType = String.valueOf(color.getSelectedItem());
//Display the selected item
brands.setText(beerType);
}
}
我知道如果我移动findviewbyid
进入onclick
方法,代码将运行良好,但我想了解为什么即使 setContentView 已被调用,它也不会以这种方式工作。
最佳答案
也许您放错了右大括号的位置。这应该可以修复你的 NPE。
public class FindBeerActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_find_beer);
Spinner color = (Spinner) findViewById(R.id.color);
TextView brands = (TextView) findViewById(R.id.brands);
}
public void onClickFindBeer(View view) {
//Get the selected item in the spinner
String beerType = String.valueOf(color.getSelectedItem());
//Display the selected item
brands.setText(beerType);
}
}
关于java - 为什么这段代码会给我一个空指针异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49019493/