【问题标题】:TouchInterceptor class in Android null pointer exceptionAndroid空指针异常中的TouchInterceptor类
【发布时间】:2011-07-20 01:49:32
【问题描述】:

我想重用来自:
https://android.googlesource.com/platform/packages/apps/Music/+/master/src/com/android/music/TouchInterceptor.javaTouchInterceptor

但出现 NullPointerException 就行了:

View dragger = item.findViewById(R.id.icon);

追踪:

03-22 00:45:55.078: ERROR/AndroidRuntime(26116): java.lang.NullPointerException
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at trackyt.android.client.ui.activities.TouchListView.onInterceptTouchEvent(TouchListView.java:134)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:848)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:869)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:869)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:869)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1691)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1125)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at android.app.Activity.dispatchTouchEvent(Activity.java:2096)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1675)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at android.view.ViewRoot.deliverPointerEvent(ViewRoot.java:2194)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at android.view.ViewRoot.handleMessage(ViewRoot.java:1878)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at android.os.Handler.dispatchMessage(Handler.java:99)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at android.os.Looper.loop(Looper.java:123)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at android.app.ActivityThread.main(ActivityThread.java:3683)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at java.lang.reflect.Method.invokeNative(Native Method)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at java.lang.reflect.Method.invoke(Method.java:507)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
03-22 00:45:55.078: ERROR/AndroidRuntime(26116):     at dalvik.system.NativeStart.main(Native Method)

【问题讨论】:

    标签: android


    【解决方案1】:

    在您的列表项中,您需要一个带有 id="@android/id:icon" 的图像视图以避免出现此空指针错误!

    【讨论】:

      【解决方案2】:

      我之前遇到过类似的问题 - 确保您在 onCreate() 从 XML 呈现视图之后调用它 - 即在您至少从 XML 生成视图一次之后。

      我在调用 setContentView() 之前有它,所以它返回了一个 null 指针。

      【讨论】:

      • 感谢您的建议,我检查了 - 我在 onCreate() 之后肯定会调用它。
      猜你喜欢
      • 1970-01-01
      • 2013-04-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-07
      相关资源
      最近更新 更多