[英]android starting Activity from Intent in onClickListener in common class returns error
我有一个导航按钮,我在每个类中使用,并希望在包含所有公共代码的类中设置其onClickListener。 但是我得到了一个
"The method startActivity(Intent) is undefined for the type new View.OnClickListener(){}"
startActivity(i)中的错误。
相关代码是:
public static void initiateNavigationButton(Context context, View view, int layoutResource) {
final Context classContext = context;
LayoutInflater inflater = LayoutInflater.from(classContext);
View layout = inflater.inflate(layoutResource, (ViewGroup) view);
Button navigationButton = (Button) layout.findViewById(R.id.navigation_button);
navigationButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(classContext, HomeActivity.class);
startActivity(i);
}
});
}
您位于实现View.OnClickListener
的内部类中。
该类没有可以调用的startActivity
方法,因此您需要将其包装以访问父活动的方法。 假设您的班级名称是“MyActivity”,请更改行startActivity(i);
至
MyActivity.this.startActivity(i);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.