ImageView正在崩溃应用程序

时间:2013-12-23 06:50:15

标签: android eclipse crash imageview

这个应用程序在我的Android 2.1上完美运行但是当我在我的Galaxy S3 4.1.1上使用它时它根本不起作用并且崩溃了

LogCat

12-22 22:38:39.756: E/AndroidRuntime(25460): FATAL EXCEPTION: main
12-22 22:38:39.756: E/AndroidRuntime(25460): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.TripleC.twenty20/com.TripleC.twenty20.MainActivity}: android.view.InflateException: Binary XML file line #20: Error inflating class android.widget.ImageView
12-22 22:38:39.756: E/AndroidRuntime(25460):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2088)
12-22 22:38:39.756: E/AndroidRuntime(25460):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2113)
12-22 22:38:39.756: E/AndroidRuntime(25460):    at android.app.ActivityThread.access$700(ActivityThread.java:139)
12-22 22:38:39.756: E/AndroidRuntime(25460):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1224)
12-22 22:38:39.756: E/AndroidRuntime(25460):    at android.os.Handler.dispatchMessage(Handler.java:99)
12-22 22:38:39.756: E/AndroidRuntime(25460):    at android.os.Looper.loop(Looper.java:137)
12-22 22:38:39.756: E/AndroidRuntime(25460):    at android.app.ActivityThread.main(ActivityThread.java:4918)
12-22 22:38:39.756: E/AndroidRuntime(25460):    at java.lang.reflect.Method.invokeNative(Native Method)
12-22 22:38:39.756: E/AndroidRuntime(25460):    at java.lang.reflect.Method.invoke(Method.java:511)
12-22 22:38:39.756: E/AndroidRuntime(25460):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1004)
12-22 22:38:39.756: E/AndroidRuntime(25460):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:771)
12-22 22:38:39.756: E/AndroidRuntime(25460):    at dalvik.system.NativeStart.main(Native Method)
12-22 22:38:39.756: E/AndroidRuntime(25460): Caused by: android.view.InflateException: Binary XML file line #20: Error inflating class android.widget.ImageView
12-22 22:38:39.756: E/AndroidRuntime(25460):    at android.view.LayoutInflater.createView(LayoutInflater.java:613)
12-22 22:38:39.756: E/AndroidRuntime(25460):    at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
12-22 22:38:39.756: E/AndroidRuntime(25460):    at android.view.LayoutInflater.onCreateView(LayoutInflater.java:660)

这里也是我的XML构建,我看到它是我已经提出的图片,但我不知道图片是什么问题,如果我删除它,该应用程序完美但我需要那里的图片

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/wood"
 >

<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="Welcome To the Beta Version of 20/20's Youth Ministry New App"
android:gravity="center"
android:id="@+id/fragment_main_textview" 
android:textColor="#FFFFFF"
android:textSize="10pt"
/>

<ImageView 
android:layout_width="120pt"
android:id="@+id/mainLogo" 
android:layout_height="120pt"
android:background="@drawable/glasses"
android:layout_gravity="center"
/>

</LinearLayout>

现在说这个

12-22 23:16:31.465: A/libc(3371): Fatal signal 11 (SIGSEGV) at 0x000009a4 (code=1), thread 3371 (ripleC.twenty20)

6 个答案:

答案 0 :(得分:2)

问题在于你必须为imageview设置的图像的大小,正如你已经提到的,在以前的版本中,它工作得很完美,但在较新的版本中,它会让你的应用程序崩溃,这意味着你没有; t在drawable文件夹中添加图像,在资源中添加drawable文件夹并在该文件夹中添加glasses图像,然后清理项目并运行应用程序,那么问题就解决了。

您的错误发生在:

Caused by: android.view.InflateException: Binary XML file line #20: Error inflating class android.widget.ImageView
12-22 22:38:39.756: E/AndroidRuntime(25460):    at android.view.LayoutInflater.createView(LayoutInflater.java:613)
12-22 22:38:39.756: E/AndroidRuntime(25460):    

并在第20行生成异常,它是图像视图。

答案 1 :(得分:1)

您是否正在扩展布局 它是空指针,意味着Android无法找到您的Drawable id(眼镜), 将相同的图像放在缩放的drawables中,或者只是创建一个drawable文件夹并将眼镜放在drawable文件夹中。 它应该工作正常。

答案 2 :(得分:1)

我面临同样的问题,但我发现深度为8的图像会导致问题 所以我使用另一个深度超过8的图像

enter image description here

答案 3 :(得分:0)

由于资源dpi问题,请将资源放在drawable&amp;布局目录&amp;尝试,没有像drawable-hdpi那样的扩展。

答案 4 :(得分:0)

我认为图像大小的问题你必须将比例设置为适合XY,并将布局宽度和高度设置为“wrap_content”,layout_centerInParent也设置为true,我相信你需要所有这些属性不仅要设置其中一个:

    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    android:scaleType="fitXY"

我希望这会对你有帮助......

答案 5 :(得分:0)

这只是一件简单的事情。图像文件的分辨率/尺寸过高。只需更改分辨率就可以解决问题。这是唯一的问题。