【问题标题】:Android : ViewPager OnClickListener NullPointerExceptionAndroid:ViewPager OnClickListener NullPointerException
【发布时间】:2016-01-01 09:22:30
【问题描述】:

所以每当我点击页面时,我都会尝试做一些事情。

我做了我所知道的一切,实现了 View.OnClickListenerviewPager.setOnClickListener(this) ,但我得到的只是应用程序崩溃,我在 logcat 中得到 NullPointerException ,我猜是因为我做了 button.setOnClickListener(this) ;它引起了问题?。

或者可能是因为我必须实现 ViewPager.OnClickListener,但是 IDE 给了我与 View.OnClickListener 重复类的错误,我不想删除它,因为我需要它作为按钮。

我是错还是对?如果错了是什么问题,我应该如何解决?

【问题讨论】:

    标签: java android nullpointerexception android-viewpager onclicklistener


    【解决方案1】:
    In your adapter where you return view object or any other view object like image view or button in onInstanciated method use
    
    view.setonClickListner(new Listener(position));
    
        class Listener implements OnClickListener {
            private int position;
    
    
            Listener(int position) {
                this.position = position;
                this.imageView = imageView;
                this.data = data;
            }
    
            @SuppressLint("UseValueOf")
            @Override
            public void onClick(View v) {
    
             posSize = position;
                    Toast.makeText(getApplicationContext(), "" + posSize,
                            Toast.LENGTH_SHORT).show();
    
    
            }
        }
    

    【讨论】:

      【解决方案2】:

      明确声明您的目标接口,例如

      android.view.View.OnClickListener

      一个好的解决方案可能是添加,

      android:onClick="buttonClicked" 用于 xml 内的 Button,android:onClick="viewPagerClicked" 用于 xml 内的 ViewPager。

      这些导致方法调用各自的视图,

      public void buttonClicked(View button) {
      }
      
      public void viewPagerClicked(View pager) {
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-18
        • 2017-05-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多