android.view.InflateException: строка двоичного XML-файла #11

#android

#Android

Вопрос:

у меня есть listview с некоторыми элементами.когда пользователь касается первого элемента списка, он запускает диалоговое окно с фотографией и некоторым текстом ниже.это происходит для каждого элемента списка. но, к сожалению, я получаю эту android.view.InflateException: Binary XML file line #11 ошибку принудительного отключения .. это часть моего манифеста:

   <activity android:name=".kalamaki"
     android:label="Beaches in Chania"                                                      
     android:screenOrientation="portrait"
      android:configChanges="orientation|keyboardHidden"
                android:theme="@android:style/Theme.Dialog"
     />
  

это мой файл .xml:

 <?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
        android:background="#cfcfcc"

    >
    <LinearLayout android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
<ImageView android:layout_marginTop="5px"
android:id="@ id/image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@ id/image"  
/>

    <TextView   
    android:layout_marginTop="5px"
    android:id="@ id/text"
        android:layout_width="wrap_content" android:layout_height="wrap_content"
        android:text="@ id/text"
        android:textColor="#262626"
        />

</LinearLayout> 
    </ScrollView>
  

и это моя ошибка logcat:

 04-30 19:08:34.433: ERROR/AndroidRuntime(405): Uncaught handler: thread main exiting due to uncaught exception
04-30 19:08:34.463: ERROR/AndroidRuntime(405): java.lang.RuntimeException: Unable to start activity ComponentInfo{kostas.menu.chania/kostas.menu.chania.sfinari}: android.view.InflateException: Binary XML file line #11: Error inflating class <unknown>
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2454)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2470)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.app.ActivityThread.access$2200(ActivityThread.java:119)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1821)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.os.Handler.dispatchMessage(Handler.java:99)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.os.Looper.loop(Looper.java:123)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.app.ActivityThread.main(ActivityThread.java:4310)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at java.lang.reflect.Method.invokeNative(Native Method)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at java.lang.reflect.Method.invoke(Method.java:521)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at dalvik.system.NativeStart.main(Native Method)
04-30 19:08:34.463: ERROR/AndroidRuntime(405): Caused by: android.view.InflateException: Binary XML file line #11: Error inflating class <unknown>
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.view.LayoutInflater.createView(LayoutInflater.java:513)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:563)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.view.LayoutInflater.rInflate(LayoutInflater.java:618)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.view.LayoutInflater.rInflate(LayoutInflater.java:621)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.view.LayoutInflater.inflate(LayoutInflater.java:407)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:198)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.app.Activity.setContentView(Activity.java:1622)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at kostas.menu.chania.sfinari.onCreate(sfinari.java:15)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2417)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     ... 11 more
04-30 19:08:34.463: ERROR/AndroidRuntime(405): Caused by: java.lang.reflect.InvocationTargetException
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.widget.ImageView.<init>(ImageView.java:105)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at java.lang.reflect.Constructor.constructNative(Native Method)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at java.lang.reflect.Constructor.newInstance(Constructor.java:446)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.view.LayoutInflater.createView(LayoutInflater.java:500)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     ... 23 more
04-30 19:08:34.463: ERROR/AndroidRuntime(405): Caused by: android.content.res.Resources$NotFoundException: File res/drawable-mdpi/scrollbar_handle_vertical.9.png from drawable resource ID #0x7f050000
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.content.res.Resources.loadDrawable(Resources.java:1710)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.content.res.TypedArray.getDrawable(TypedArray.java:548)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.widget.ImageView.<init>(ImageView.java:115)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     ... 27 more
04-30 19:08:34.463: ERROR/AndroidRuntime(405): Caused by: java.io.FileNotFoundException: res/drawable-mdpi/scrollbar_handle_vertical.9.png
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.content.res.AssetManager.openNonAssetNative(Native Method)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.content.res.AssetManager.openNonAsset(AssetManager.java:391)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     at android.content.res.Resources.loadDrawable(Resources.java:1702)
04-30 19:08:34.463: ERROR/AndroidRuntime(405):     ... 29 more
  

Ответ №1:

Ответ на ваш вопрос содержится в предоставленной вами трассировке стека:

 ERROR/AndroidRuntime(405): Caused by: android.content.res.Resources$NotFoundException: File res/drawable- ...
ERROR/AndroidRuntime(405): Caused by: java.io.FileNotFoundException: res/drawable-mdpi/scrollbar_handle_vertical.9.png
  

Убедитесь, что ваш файл scrollbar_handle_vertical.9.png находится в res/drawable-mdpi/ папке

Правка вашего android:src не подходит для вашего ImageView и TextView

Это должно выглядеть как:

 <ImageView android:layout_marginTop="5px"
android:id="@ id/image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/nameOfTheImage" // <--Change  
/>

    <TextView   
    android:layout_marginTop="5px"
    android:id="@ id/text"
        android:layout_width="wrap_content" android:layout_height="wrap_content"
        android:text="@string/myText" // <-- Change
        android:textColor="#262626"
        />
  

Итак, под drawable папкой у вас должен быть файл с именем nameOfTheImage и запись в strings.xml файле (вы можете указать любое имя файла) под res/values с именем myText

Комментарии:

1. ваш android:src должен указывать на выводимый объект, но он указывает на идентификатор. Это не кажется правильным.