Context参数的用法

(1)如果当前类继承为Activity,直接使用该类的this就可以获 取对应Context对象,因为Acitivty继承了Context对象。

例如  Public Class MyActivity extends Activity

此时你使用intent.SetClass(Context context, ...),第一个参数你就可以使用MyActivity.this作为Context对象传入。

(2)在Acitivity中直接使用this获取Context对象时,一定要注意你使用this的作用域。如果this的作用域是Activity中则没有问题,如果不是,则该this对应的不是Context对象。

例如:

btn.setOnClick(new View.OnClick() {

intent.setClass(this, ..)  //这里使用this就不正确,应该这个this不是在Activity的作用域中,而是在btn的作用域中。

}); 

(3)如果不在Activity中,可以使用this.getContext()去获取你需要的Context对象

例如:

Public Class MyContentProvider extends ContentProvider中

intent.setClass(this.getContext())


你可能感兴趣的:(Android应用)