在android中的上下文的重要性
可能重复:
Android中的Context是什么?
我阅读Android的当前状态的应用程序/对象的上下文
Intent intent=new Intent(this,SecondaryActivity.class);
startActivity(intent);
在这个地方this
我们可以使用getApplicationContext()
但在
@Override
public void onClick(View view) {
Toast.makeText(getApplicationContext(), "Hai",Toast.LENGTH_LONG).show();
}
我们不能用this
在这里,我的意思是在getApplicationContext()
为什么这也指当前对象,因此感到困惑的this
和context
帮助我学习这一点,参考股票我..
当你通过this
来的方法,你的意思是this
引用的实例Context
,所以如果你在活动中,您可以通过,而不是语境这一点。 但是当你在匿名课堂时:
button.setOnClickListener(new OnClickListener(){
@Override
public void onClick(){
//here this is a reference to OnClickListener instance
}
要在onClick
方法中传递Context
,您可以编写
MyActivity.this
Activity是上下文的一个子类,所以所有Activity
对象也都是Context
:
android.content.Context
↳ android.content.ContextWrapper
↳ android.view.ContextThemeWrapper
↳ android.app.Activity
所以,如果你不能用this
比它意味着this
不是一个实例Context
类或它的子类。