android - 我的应用程序中的致命异常

标签 android android-layout android-intent android-listview

在我的应用程序中我有这个错误:

E/AndroidRuntime(16123): FATAL EXCEPTION: main
E/AndroidRuntime(16123): java.lang.RuntimeException: Unable to start activity ComponentInfo{it.bisemanuDEV.mathTools/it.bisemanuDEV.mathTools.MainActivity}: android.view.InflateException: Binary XML file line #58: Error inflating class <unknown>
E/AndroidRuntime(16123):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2073)
E/AndroidRuntime(16123):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2098)
E/AndroidRuntime(16123):    at android.app.ActivityThread.access$600(ActivityThread.java:138)
E/AndroidRuntime(16123):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1204)
E/AndroidRuntime(16123):    at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime(16123):    at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime(16123):    at android.app.ActivityThread.main(ActivityThread.java:4872)
E/AndroidRuntime(16123):    at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(16123):    at java.lang.reflect.Method.invoke(Method.java:511)
E/AndroidRuntime(16123):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
E/AndroidRuntime(16123):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
E/AndroidRuntime(16123):    at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime(16123): Caused by: android.view.InflateException: Binary XML file line #58: Error inflating class <unknown>
E/AndroidRuntime(16123):    at android.view.LayoutInflater.createView(LayoutInflater.java:613)
E/AndroidRuntime(16123):    at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
E/AndroidRuntime(16123):    at android.view.LayoutInflater.onCreateView(LayoutInflater.java:660)
E/AndroidRuntime(16123):    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:685)
E/AndroidRuntime(16123):    at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)

05-11 20:21:56.843: E/AndroidRuntime(16123): 在 android.view.LayoutInflater.rInflate(LayoutInflater.java:749) E/AndroidRuntime(16123): 在 android.view.LayoutInflater.inflate(LayoutInflater.java:489) E/AndroidRuntime(16123): 在 android.view.LayoutInflater.inflate(LayoutInflater.java:396) E/AndroidRuntime(16123): 在 android.view.LayoutInflater.inflate(LayoutInflater.java:352) E/AndroidRuntime(16123): 在 com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:361) E/AndroidRuntime(16123): 在 android.app.Activity.setContentView(Activity.java:2043) E/AndroidRuntime(16123): 在 it.bisemanuDEV.mathTools.MainActivity.onCreate(MainActivity.java:27) E/AndroidRuntime(16123): 在 android.app.Activity.performCreate(Activity.java:5191) E/AndroidRuntime(16123): 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1082) E/AndroidRuntime(16123): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2037) E/AndroidRuntime(16123): ... 11 更多 E/AndroidRuntime(16123): 引起:java.lang.reflect.InvocationTargetException E/AndroidRuntime(16123): 在 java.lang.reflect.Constructor.constructNative(Native 方法) E/AndroidRuntime(16123): 在 java.lang.reflect.Constructor.newInstance(Constructor.java:417) E/AndroidRuntime(16123): 在 android.view.LayoutInflater.createView(LayoutInflater.java:587) E/AndroidRuntime(16123): ... 25 更多 E/AndroidRuntime(16123):引起:java.lang.OutOfMemoryError E/AndroidRuntime(16123): 在 android.graphics.BitmapFactory.nativeDecodeAsset(本地方法) E/AndroidRuntime(16123): 在 android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:500) E/AndroidRuntime(16123): 在 android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:353) E/AndroidRuntime(16123): 在 android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:781) E/AndroidRuntime(16123): 在 android.content.res.Resources.loadDrawable(Resources.java:1969) E/AndroidRuntime(16123): 在 android.content.res.Resources.getDrawable(Resources.java:673) E/AndroidRuntime(16123): 在 android.graphics.drawable.StateListDrawable.inflate(StateListDrawable.java:173) E/AndroidRuntime(16123): 在 android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:881) E/AndroidRuntime(16123): 在 android.graphics.drawable.Drawable.createFromXml(Drawable.java:818) E/AndroidRuntime(16123): 在 android.content.res.Resources.loadDrawable(Resources.java:1954) E/AndroidRuntime(16123): 在 android.content.res.TypedArray.getDrawable(TypedArray.java:601) E/AndroidRuntime(16123): 在 android.view.View.(View.java:3347) E/AndroidRuntime(16123): 在 android.widget.TextView.(TextView.java:494) E/AndroidRuntime(16123): 在 android.widget.Button.(Button.java:107) E/AndroidRuntime(16123): 在 android.widget.Button.(Button.java:103) E/AndroidRuntime(16123): ... 28 更多

有什么解决办法?

最佳答案

您的应用程序内存增长太快...这就是 Android 管理每个应用程序内存的方式:假设您启动应用程序时,它有 10MB 的内存。例如,当您的应用程序使用 8MB 时,Android 预测剩余的 2MB 可能不够用。因此 Android 为您的应用程序提供了一些额外的内存。所以现在你有 13MB(例如)。每次 Android 决定剩余内存可能不足以满足您的应用程序时,都会重复这种情况。这样,应用程序使用的内存增长缓慢,Android 可以更有效地管理它。

在您的示例中,您有一个正在解码图像的循环。这样一来,您的应用程序使用的内存大小就会增长得太快,而 Android 来不及为您提供更多内存。

关于android - 我的应用程序中的致命异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16485851/

相关文章:

java - 蓝牙:Linux(在 C++ 中)与 Android 连接

android - 使用自定义 ButtonAdapter 扩展 BaseAdapter 将重复项添加到 Gridlayout

java - 返回值 android 中 Intent 的最佳实践

android - 如何传递 Intent 要求用户选择任何应用程序扫描二维码?

android - 如何发送 HTML 电子邮件

android - 尝试在空对象引用上调用虚拟方法 '...TextView.setText(java.lang.CharSequence)'

java - 在 Android 中以编程方式了解设备屏幕尺寸?

java - 如何以编程方式为另一个 xml 文件设置 Textview 的背景颜色?

android - 在 AndroidManifest 中注册 Intent.ACTION_DREAMING_STARTED

安卓 2.3 : Animating a View?