无法在我的适配器中的O​​nClickListener中关闭Drawe

时间:2015-03-28 18:08:41

标签: android

我无法在我的适配器中关闭OnClickListener中的Drawer 这是OnClickListener

    private View.OnClickListener Click=new View.OnClickListener(){
        @Override
        public void onClick(View v) {
            Intent i = new Intent();
            drlay.closeDrawers(); // ERROR !!!
            switch(getPosition())
            {
                case 1:
                    i.setComponent(new ComponentName(contxt,Top.class));
                    i.setAction("android.intent.action.MAIN");
                    i.addCategory("android.intent.category.LAUNCHER");
                    i.addCategory("android.intent.category.DEFAULT");
                    v.getContext().startActivity(i);
                    break;}

这是logcat

FATAL EXCEPTION: main
java.lang.NullPointerException
        at com.example.myapplication.MyAdapter$ViewHolder$1.onClick(MyAdapter.java:77)
        at android.view.View.performClick(View.java:4240)
        at android.view.View$PerformClick.run(View.java:17735)
        at android.os.Handler.handleCallback(Handler.java:730)
        at android.os.Handler.dispatchMessage(Handler.java:92)
        at android.os.Looper.loop(Looper.java:137)
        at android.app.ActivityThread.main(ActivityThread.java:5136)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:525)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
        at dalvik.system.NativeStart.main(Native Method)

如何关闭它?

1 个答案:

答案 0 :(得分:0)

您的适配器无法找到您的抽屉布局。

虽然尝试将监听器移动到托管抽屉的活动,而不是在列表视图上使用setOnItemClickListener,但不应在适配器中处理此类事情。