static void n_OnCheckedChanged_Lcom_mikepenz_materialdrawer_model_interfaces_IDrawerItem_Landroid_widget_CompoundButton_Z(IntPtr jnienv, IntPtr native__this, IntPtr native_p0, IntPtr native_p1, bool p2)
 {
     global::Com.Mikepenz.Materialdrawer.Interfaces.IOnCheckedChangeListener __this = global::Java.Lang.Object.GetObject <global::Com.Mikepenz.Materialdrawer.Interfaces.IOnCheckedChangeListener> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     global::Com.Mikepenz.Materialdrawer.Model.Interfaces.IDrawerItem        p0     = (global::Com.Mikepenz.Materialdrawer.Model.Interfaces.IDrawerItem)global::Java.Lang.Object.GetObject <global::Com.Mikepenz.Materialdrawer.Model.Interfaces.IDrawerItem> (native_p0, JniHandleOwnership.DoNotTransfer);
     global::Android.Widget.CompoundButton p1 = global::Java.Lang.Object.GetObject <global::Android.Widget.CompoundButton> (native_p1, JniHandleOwnership.DoNotTransfer);
     __this.OnCheckedChanged(p0, p1, p2);
 }
 static void n_OnItemClick_Landroid_view_View_Lcom_mikepenz_materialdrawer_model_interfaces_IDrawerItem_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0, IntPtr native_p1)
 {
     global::Com.Mikepenz.Materialdrawer.Util.DrawerItemViewHelper.IOnDrawerItemClickListener __this = global::Java.Lang.Object.GetObject <global::Com.Mikepenz.Materialdrawer.Util.DrawerItemViewHelper.IOnDrawerItemClickListener> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     global::Android.Views.View p0 = global::Java.Lang.Object.GetObject <global::Android.Views.View> (native_p0, JniHandleOwnership.DoNotTransfer);
     global::Com.Mikepenz.Materialdrawer.Model.Interfaces.IDrawerItem p1 = (global::Com.Mikepenz.Materialdrawer.Model.Interfaces.IDrawerItem)global::Java.Lang.Object.GetObject <global::Com.Mikepenz.Materialdrawer.Model.Interfaces.IDrawerItem> (native_p1, JniHandleOwnership.DoNotTransfer);
     __this.OnItemClick(p0, p1);
 }
#pragma warning restore 0649

        public void OnCheckedChanged(global::Com.Mikepenz.Materialdrawer.Model.Interfaces.IDrawerItem p0, global::Android.Widget.CompoundButton p1, bool p2)
        {
            var __h = Handler;

            if (__h != null)
            {
                __h(sender, new CheckedChangeEventArgs(p0, p1, p2));
            }
        }
#pragma warning restore 0649

            public void OnItemClick(global::Android.Views.View p0, global::Com.Mikepenz.Materialdrawer.Model.Interfaces.IDrawerItem p1)
            {
                var __h = Handler;

                if (__h != null)
                {
                    __h(sender, new DrawerItemClickEventArgs(p0, p1));
                }
            }
            public unsafe void OnItemClick(global::Android.Views.View p0, global::Com.Mikepenz.Materialdrawer.Model.Interfaces.IDrawerItem p1)
            {
                if (id_onItemClick_Landroid_view_View_Lcom_mikepenz_materialdrawer_model_interfaces_IDrawerItem_ == IntPtr.Zero)
                {
                    id_onItemClick_Landroid_view_View_Lcom_mikepenz_materialdrawer_model_interfaces_IDrawerItem_ = JNIEnv.GetMethodID(class_ref, "onItemClick", "(Landroid/view/View;Lcom/mikepenz/materialdrawer/model/interfaces/IDrawerItem;)V");
                }
                JValue *__args = stackalloc JValue [2];

                __args [0] = new JValue(p0);
                __args [1] = new JValue(p1);
                JNIEnv.CallVoidMethod(((global::Java.Lang.Object) this).Handle, id_onItemClick_Landroid_view_View_Lcom_mikepenz_materialdrawer_model_interfaces_IDrawerItem_, __args);
            }
        public unsafe void OnCheckedChanged(global::Com.Mikepenz.Materialdrawer.Model.Interfaces.IDrawerItem p0, global::Android.Widget.CompoundButton p1, bool p2)
        {
            if (id_onCheckedChanged_Lcom_mikepenz_materialdrawer_model_interfaces_IDrawerItem_Landroid_widget_CompoundButton_Z == IntPtr.Zero)
            {
                id_onCheckedChanged_Lcom_mikepenz_materialdrawer_model_interfaces_IDrawerItem_Landroid_widget_CompoundButton_Z = JNIEnv.GetMethodID(class_ref, "onCheckedChanged", "(Lcom/mikepenz/materialdrawer/model/interfaces/IDrawerItem;Landroid/widget/CompoundButton;Z)V");
            }
            JValue *__args = stackalloc JValue [3];

            __args [0] = new JValue(p0);
            __args [1] = new JValue(p1);
            __args [2] = new JValue(p2);
            JNIEnv.CallVoidMethod(((global::Java.Lang.Object) this).Handle, id_onCheckedChanged_Lcom_mikepenz_materialdrawer_model_interfaces_IDrawerItem_Landroid_widget_CompoundButton_Z, __args);
        }
 public CheckedChangeEventArgs(global::Com.Mikepenz.Materialdrawer.Model.Interfaces.IDrawerItem p0, global::Android.Widget.CompoundButton p1, bool p2)
 {
     this.p0 = p0;
     this.p1 = p1;
     this.p2 = p2;
 }
 public DrawerItemClickEventArgs(global::Android.Views.View p0, global::Com.Mikepenz.Materialdrawer.Model.Interfaces.IDrawerItem p1)
 {
     this.p0 = p0;
     this.p1 = p1;
 }