我以为我对自己正在做的事情有很好的把握,但是每当我觉得自己对某事掌握得很好时,事实证明我错了:)
有问题的代码是这个
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mButton = (Button)findViewById(R.id.m_button);
mButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
startActivity(intent);
}
});
}
我的困惑在于new Intent()
andstartActivity
方法。
我的假设是,只要我们在一个匿名类View.OnClickListener
中工作,我就必须做类似的事情
MainActivity.this.startActivity(intent);
当我不在匿名班级时,我可以简单地做
new Intent(this,SecondActivity.class);
有人可以解释为什么我可以调用该startActivity();
方法但不能只this
在意图参数中使用吗?