私有字段 'showGuess' 从未分配
Private field 'showGuess' never assigned
我已经为按钮 showGuess 初始化并创建了一个侦听器。顺便说一下,应用程序崩溃了
public class MainActivity extends AppCompatActivity {
private Button showGuess;
public MainActivity(Button showGuess) {
this.showGuess = showGuess;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
showGuess.findViewById(R.id.button_name);
showGuess.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, ShowGuess.class);
startActivity(intent);
}
});
}
}
这里是error/warning调试部分写的:
java.lang.NullPointerException: 尝试在空对象引用上调用虚拟方法 'android.view.View android.widget.Button.findViewById(int)'
稍作修改:
public class MainActivity extends AppCompatActivity {
private Button showGuess;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
showGuess=findViewById(R.id.button_name);
showGuess.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, ShowGuess.class);
startActivity(intent);
}
});
}
}
我已经为按钮 showGuess 初始化并创建了一个侦听器。顺便说一下,应用程序崩溃了
public class MainActivity extends AppCompatActivity {
private Button showGuess;
public MainActivity(Button showGuess) {
this.showGuess = showGuess;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
showGuess.findViewById(R.id.button_name);
showGuess.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, ShowGuess.class);
startActivity(intent);
}
});
}
}
这里是error/warning调试部分写的:
java.lang.NullPointerException: 尝试在空对象引用上调用虚拟方法 'android.view.View android.widget.Button.findViewById(int)'
稍作修改:
public class MainActivity extends AppCompatActivity {
private Button showGuess;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
showGuess=findViewById(R.id.button_name);
showGuess.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, ShowGuess.class);
startActivity(intent);
}
});
}
}