Java Android-ActionBar上的Onclick事件,带有自定义视图

Java Android-ActionBar上的Onclick事件,带有自定义视图,java,android,android-layout,android-actionbar,Java,Android,Android Layout,Android Actionbar,单击与onclick事件关联的项目,应用程序意外关闭,显示错误。非常奇怪的是,这种情况只发生在ActionBar中的项上,但相同的代码可以正确地处理活动布局中的项 班级: public class myclass extends ActionBarActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedIns

单击与onclick事件关联的项目,应用程序意外关闭,显示错误。非常奇怪的是,这种情况只发生在ActionBar中的项上,但相同的代码可以正确地处理活动布局中的项

班级:

public class myclass extends ActionBarActivity {

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_myclass);
            getSupportActionBar().setCustomView(R.layout.actionbar_myclass);
            getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
        }

        public void myonlickevent(View v) {
            System.out.println("test");
        }

}
R.layout.actionbar_myclass(点是我的代码,没有用处,原因我将在后面解释):


当我将
compileSdkVersion
和所有依赖项更新到最新版本时,问题就出现了,事实上,在此之前,我的代码工作正常。如何修复?

android:onClick在当前活动中查找函数。有关详细说明,请参阅。还有@KostasMatrix,那不是真的。

删除
android:onClick
并在布局中添加一个
onClickListener
。@akash93我会试试,谢谢,但为什么现在我需要这样做呢?首先,你在布局中声明一个onClick,但你没有为它声明一个侦听器……这就是为什么。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    ...
    android:onClick="myonlickevent" >
    ...
</RelativeLayout>
java.lang.IllegalStateException: Could not find a method myonlickevent(View) in the activity class android.view.ContextThemeWrapper for onClick handler on view class android.widget.RelativeLayout with id 'myrelativelayoutid'.