活动在 4.3 和 4.4.2 中不起作用
Posted
技术标签:
【中文标题】活动在 4.3 和 4.4.2 中不起作用【英文标题】:Activity don't work in 4.3 and 4.4.2 【发布时间】:2014-05-15 22:50:03 【问题描述】:我有一个只有一些按钮的活动。当我单击一个时,会出现一个警报对话框。 它适用于 2.3.6、4.0.3 和 4.1.2,但在 4.3 和 4.4.2 中我遇到了问题。
我的错误:
05-15 19:15:23.145: E/androidRuntime(16247): FATAL EXCEPTION: main
05-15 19:15:23.145: E/AndroidRuntime(16247): java.lang.RuntimeException: Unable to start activity ComponentInfocom.example.MYPROJECT/br.com.MYPROJECT.MYACTIVITY: java.lang.NullPointerException
05-15 19:15:23.145: E/AndroidRuntime(16247): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2295)
05-15 19:15:23.145: E/AndroidRuntime(16247): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2349)
05-15 19:15:23.145: E/AndroidRuntime(16247): at android.app.ActivityThread.access$700(ActivityThread.java:159)
05-15 19:15:23.145: E/AndroidRuntime(16247): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1316)
05-15 19:15:23.145: E/AndroidRuntime(16247): at android.os.Handler.dispatchMessage(Handler.java:99)
05-15 19:15:23.145: E/AndroidRuntime(16247): at android.os.Looper.loop(Looper.java:176)
05-15 19:15:23.145: E/AndroidRuntime(16247): at android.app.ActivityThread.main(ActivityThread.java:5419)
05-15 19:15:23.145: E/AndroidRuntime(16247): at java.lang.reflect.Method.invokeNative(Native Method)
05-15 19:15:23.145: E/AndroidRuntime(16247): at java.lang.reflect.Method.invoke(Method.java:525)
05-15 19:15:23.145: E/AndroidRuntime(16247): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1046)
05-15 19:15:23.145: E/AndroidRuntime(16247): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:862)
05-15 19:15:23.145: E/AndroidRuntime(16247): at dalvik.system.NativeStart.main(Native Method)
05-15 19:15:23.145: E/AndroidRuntime(16247): Caused by: java.lang.NullPointerException
05-15 19:15:23.145: E/AndroidRuntime(16247): at br.com.MYPROJECT.MYACTIVITY.onCreate(Padroeiros.java:139)
05-15 19:15:23.145: E/AndroidRuntime(16247): at android.app.Activity.performCreate(Activity.java:5372)
05-15 19:15:23.145: E/AndroidRuntime(16247): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1104)
05-15 19:15:23.145: E/AndroidRuntime(16247): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2257)
【问题讨论】:
请将代码贴在文件中,我们可以更好地帮助您。 谢谢大家。我发现了我的错误,我正在引用“R.id.buttonX”,但在我的 xml 中我有“R.botao.buttonX” 【参考方案1】:Caused by: java.lang.NullPointerException at br.com.MYPROJECT.MYACTIVITY.onCreate(Padroeiros.java:139)
您在 Padroeiros.java 的第 139 行有一个空指针异常
【讨论】:
139 - buttonX.setOnClickListener(new View.OnClickListener() //some code NullPointer 在哪里?O.o 我不知道?使用调试器并逐步找出答案。 您的 buttonX 成员很可能为空。检查调试模式,无论你是否初始化过它。 按钮 buttonX = (Button) findViewById(R.id.buttonX);它不为空。我会仔细检查调试模式。【参考方案2】:check your manifest
你的应用包和你的活动包可以不同。 但在这种情况下,请在名称属性中使用活动完整路径
例如:
<activity
android:name="br.com.MYPROJECT.MYACTIVITY"
android:launchMode="singleTask"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustResize" >
</activity>
【讨论】:
以上是关于活动在 4.3 和 4.4.2 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
UITableViewCell 上的 UILongPressGestureRecognizer 在 iOS 5 和 4.3 中不起作用