Android OnClickListener,意图和上下文

Jef*_*Lam 1 java android this android-context onclicklistener

我是java和android的新手.在这里,我正在尝试设置我的onclicklistener,因此在单击时,它将显示另一个活动,即ActivityB.class.问题在于Intent i = new Intent(context, ActivityB.class);我不知道该放什么context.我试着用thiscontext,两者都是错误的.

能否请您解释何时以及为何使用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);
            }
        }); 

}
Run Code Online (Sandbox Code Playgroud)

小智 8

将代码更改为.

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);
        }
    }); 
Run Code Online (Sandbox Code Playgroud)

因为您需要在使用intent时传递上下文.