繁体   English   中英

在普通类的onClickListener中从Intent开始的Intent活动返回错误

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM