-1

Я просто хочу спросить, почему нажатие кнопки изображения всегда сбой. У меня возникла проблема, когда я добавляю Image View в макет Child, он приводит к сбою. Но когда я удалил Image View, он работает. Я занимаюсь разработкой Mobile Grocery App для моей диссертации, и я начинаю. Поэтому, пожалуйста, несите мои коды.Crashing Image Button

Logcat

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.admin.mobile_grocery/com.example.admin.mobile_grocery.Baby_Food}: android.view.InflateException: Binary XML file line #7: Error inflating class <unknown> 
 
       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2110) 
 
       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2135) 
 
       at android.app.ActivityThread.access$700(ActivityThread.java:140) 
 
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1237) 
 
       at android.os.Handler.dispatchMessage(Handler.java:99) 
 
       at android.os.Looper.loop(Looper.java:137) 
 
       at android.app.ActivityThread.main(ActivityThread.java:4921) 
 
       at java.lang.reflect.Method.invokeNative(Native Method) 
 
       at java.lang.reflect.Method.invoke(Method.java:511) 
 
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038) 
 
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805) 
 
       at dalvik.system.NativeStart.main(Native Method) 
 
     Caused by: android.view.InflateException: Binary XML file line #7: Error inflating class <unknown> 
 
       at android.view.LayoutInflater.createView(LayoutInflater.java:619) 
 
       at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56) 
 
       at android.view.LayoutInflater.onCreateView(LayoutInflater.java:666) 
 
       at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:691) 
 
       at android.view.LayoutInflater.rInflate(LayoutInflater.java:752) 
 
       at android.view.LayoutInflater.inflate(LayoutInflater.java:495) 
 
       at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
 
       at android.view.LayoutInflater.inflate(LayoutInflater.java:353) 
 
       at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:249) 
 
       at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:106) 
 
       at com.example.admin.mobile_grocery.Baby_Food.onCreate(Baby_Food.java:16) 
 
       at android.app.Activity.performCreate(Activity.java:5188) 
 
       at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094) 
 
       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2074) 
 
                at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2135) 
 
                at android.app.ActivityThread.access$700(ActivityThread.java:140) 
 
                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1237) 
 
                at android.os.Handler.dispatchMessage(Handler.java:99) 
 
                at android.os.Looper.loop(Looper.java:137) 
 
                at android.app.ActivityThread.main(ActivityThread.java:4921) 
 
                at java.lang.reflect.Method.invokeNative(Native Method) 
 
                at java.lang.reflect.Method.invoke(Method.java:511) 
 
                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038) 
 
                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805) 
 
                at dalvik.system.NativeStart.main(Native Method) 
 
     Caused by: java.lang.reflect.InvocationTargetException 
 
       at java.lang.reflect.Constructor.constructNative(Native Method) 
 
       at java.lang.reflect.Constructor.newInstance(Constructor.java:417) 
 
       at android.view.LayoutInflater.createView(LayoutInflater.java:593) 
 
                at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56) 
 
                at android.view.LayoutInflater.onCreateView(LayoutInflater.java:666) 
 
                at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:691) 
 
                at android.view.LayoutInflater.rInflate(LayoutInflater.java:752) 
 
                at android.view.LayoutInflater.inflate(LayoutInflater.java:495) 
 
                at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
 
                at android.view.LayoutInflater.inflate(LayoutInflater.java:353) 
 
                at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:249) 
 
                at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:106) 
 
                at com.example.admin.mobile_grocery.Baby_Food.onCreate(Baby_Food.java:16) 
 
                at android.app.Activity.performCreate(Activity.java:5188) 
 
                at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094) 
 
                at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2074) 
 
                at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2135) 
 
                at android.app.ActivityThread.access$700(ActivityThread.java:140) 
 
                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1237) 
 
                at android.os.Handler.dispatchMessage(Handler.java:99) 
 
                at android.os.Looper.loop(Looper.java:137) 
 
                at android.app.ActivityThread.main(ActivityThread.java:4921) 
 
                at java.lang.reflect.Method.invokeNative(Native Method) 
 
                at java.lang.reflect.Method.invoke(Method.java:511) 
 
                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038) 
 
                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805) 
 
                at dalvik.system.NativeStart.main(Native Method) 
 
     Caused by: java.lang.OutOfMemoryError 
 
       at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method) 
 
       at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:636) 
 
       at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:484) 
 
       at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:813) 
 
       at android.content.res.Resources.loadDrawable(Resources.java:2277) 
 
       at android.content.res.TypedArray.getDrawable(TypedArray.java:601) 
 
       at android.widget.ImageView.<init>(ImageView.java:126) 
 
       at android.widget.ImageView.<init>(ImageView.java:116) 
 
                at java.lang.reflect.Constructor.constructNative(Native Method) 
 
                at java.lang.reflect.Constructor.newInstance(Constructor.java:417) 
 
                at android.view.LayoutInflater.createView(LayoutInflater.java:593) 
 
                at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56) 
 
                at android.view.LayoutInflater.onCreateView(LayoutInflater.java:666) 
 
                at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:691) 
 
                at android.view.LayoutInflater.rInflate(LayoutInflater.java:752) 
 
                at android.view.LayoutInflater.inflate(LayoutInflater.java:495) 
 
                at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
 
                at android.view.LayoutInflater.inflate(LayoutInflater.java:353) 
 
                at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:249) 
 
                at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:106) 
 
                at com.example.admin.mobile_grocery.Baby_Food.onCreate(Baby_Food.java:16) 
 
                at android.app.Activity.performCreate(Activity.java:5188) 
 
                at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094) 
 
                at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2074) 
 
                at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2135) 
 
                at android.app.ActivityThread.access$700(ActivityThread.java:140) 
 
                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1237) 
 
                at android.os.Handler.dispatchMessage(Handler.java:99) 
 
                at android.os.Looper.loop(Looper.java:137) 
 
                at android.app.ActivityThread.main(ActivityThread.java:4921) 
 
                at java.lang.reflect.Method.invokeNative(Native Method) 
 
                at java.lang.reflect.Method.invoke(Method.java:511) 
 
                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038) 
 
                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805) 
 
                at dalvik.system.NativeStart.main(Native Method)

Baby_Items XML (Parent кнопка Image)

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" 
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
android:paddingBottom="@dimen/activity_vertical_margin" 
tools:context="com.example.admin.mobile_grocery.Baby_Items" 
android:id="@+id/baby_items"> 

<ImageButton 
    android:layout_width="100dp" 
    android:layout_height="100dp" 
    android:id="@+id/diapers" 
    android:src="@drawable/cloth_diaper_pic" 
    android:scaleType="centerCrop" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:onClick="baby_diaper" /> 

<ImageButton 
    android:layout_width="100dp" 
    android:layout_height="100dp" 
    android:id="@+id/baby_food" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" 
    android:src="@drawable/baby_food" 
    android:scaleType="centerCrop" 

    android:onClick="baby_food" /> 

<ImageButton 
    android:layout_width="100dp" 
    android:layout_height="100dp" 
    android:id="@+id/baby_milk" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentEnd="true" 
    android:src="@drawable/milk" 
    android:scaleType="centerCrop" 
    android:onClick="baby_milk" /> 

Baby_Food XML (ребенок Изображение кнопки)

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context="com.example.admin.mobile_grocery.Baby_Food" 
android:id="@+id/baby_food"> 

<ImageView 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:src="@drawable/ctgry_bckgrnd" 
    android:scaleType="centerCrop" 
    android:id="@+id/category_background" /> 

<CheckBox 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Cory &amp; Gate" 
    android:id="@+id/coryandgate" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:layout_marginTop="52dp" 
    android:checked="false" 
    android:textColor="#000000" 
    android:buttonTint="#000000" 
    /> 

<CheckBox 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Gerber" 
    android:id="@+id/gerber" 
    android:layout_below="@+id/coryandgate" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:checked="false" 
    android:textColor="#000000" 
    android:buttonTint="#000000" 
    /> 

<CheckBox 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Hipp" 
    android:id="@+id/hipp" 
    android:layout_below="@+id/gerber" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:checked="false" 
    android:textColor="#000000" 
    android:buttonTint="#000000" 
    /> 

<Button 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="ADD TO CART" 
    android:id="@+id/addcart" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentEnd="true" /> 

Baby_Items JAVA (Parent)

public class Baby_Items extends ActionBarActivity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_baby__items); 
} 

public void baby_diaper (View view) { 
    Intent i = new Intent(this, Baby_Diaper.class); 
    startActivity(i); 
} 

public void baby_food (View view) { 
    Intent i = new Intent(this, Baby_Food.class); 
    startActivity(i); 
} 

public void baby_milk (View view) { 
    Intent i = new Intent(this, Baby_Milk.class); 
    startActivity(i); 
} 

Baby_Food (ребенок)

Нет кодов не добавлены

+3

'Вызвал: java.lang.OutOfMemoryError' – CommonsWare

+0

@CommonsWare Что значит сэр? – Lawrence

+0

Насколько велики ваши изображения, размер памяти мудрый? Сколько раз изображение появляется в списке? – lentz

ответ

0

Попробуйте уменьшить количество просмотров изображений, заменяя вид изображений простого макеты и добавление к ним фонов.

+0

Да, это работает! Но сэр, лучше, если фон будет правильным? Как вы думаете, есть ли лучшее решение, чтобы сделать Image View без ошибок? – Lawrence

+0

Недостаточно памяти при отображении изображений. Проверьте этот учебник здесь для лучшего решения: prat

+0

Также вы можете проверить это может это помочь u – prat