我是 java 和 android 的新手。在这里,我试图设置我的 onclicklistener,以便在单击时显示另一个 Activity ,即 ActivityB.class。问题出在 Intent i = new Intent(context, ActivityB.class);
我不确定为 context
放什么。我尝试使用 this
和 context
,但两者都是错误的。
能否请您解释一下何时以及为何我应该使用 this
以及何时为 context
使用其他术语?
public class MainActivity extends Activity {
Button b;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
b = (Button) findViewById(R.id.button1);
b.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(context, ActivityB.class);
startActivity(i);
}
});
}
最佳答案
将代码更改为。
b.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(MainActivity.this, ActivityB.class);
startActivity(i);
}
});
因为您需要在使用 Intent 时传递上下文。
关于java - Android OnClickListener、 Intent 和上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23179795/