2016-06-03 17 views
5

So che ci sono altre domande su SO che richiedono la stessa cosa. Ho già guardato la maggior parte di loro.InflateException: riga file binario XML n. 8: errore durante la generazione di classi ImageView

La maggior parte delle risposte richiede errori di memoria. Non riesco a vedere come un ImageView che carica solo una piccola icona (24x24 pixel) possa fare qualcosa del genere.

Ma mi piacerebbe inserire lo stacktrace qui forse qualcun altro può identificare qualcosa che non posso e aiutarmi.

06-03 22:14:17.367 28590-28590/css.mvp.example.debug W/dalvikvm: threadid=1: thread exiting with uncaught exception (group=0x41e4ad40) 
06-03 22:14:17.409 28590-28590/css.mvp.example.debug E/AndroidRuntime: FATAL EXCEPTION: main 
Process: css.mvp.example.debug, PID: 28590 android.view.InflateException: Binary XML file line #8: Error inflating class ImageView 
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:713) 
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:755) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:492) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
    at css.mvp.example.main.projects.fragments.adapters.PollAnswersAdapter.getView(PollAnswersAdapter.java:38) 
    at android.widget.AbsListView.obtainView(AbsListView.java:2255) 
    at android.widget.ListView.measureHeightOfChildren(ListView.java:1263) 
    at android.widget.ListView.onMeasure(ListView.java:1175) 
    at android.view.View.measure(View.java:16540) 
    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5137) 
    at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1404) 
    at android.widget.LinearLayout.measureVertical(LinearLayout.java:695) 
    at android.widget.LinearLayout.onMeasure(LinearLayout.java:588) 
    at android.view.View.measure(View.java:16540) 
    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5137) 
    at android.widget.FrameLayout.onMeasure(FrameLayout.java:310) 
    at android.view.View.measure(View.java:16540) 
    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5137) 
    at android.support.design.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:668) 
    at android.support.design.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:735) 
    at android.view.View.measure(View.java:16540) 
    at android.support.v4.widget.DrawerLayout.onMeasure(DrawerLayout.java:1075) 
    at android.view.View.measure(View.java:16540) 
    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5137) 
    at android.widget.FrameLayout.onMeasure(FrameLayout.java:310) 
    at android.view.View.measure(View.java:16540) 
    at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:719) 
    at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:455) 
    at android.view.View.measure(View.java:16540) 
    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5137) 
    at android.widget.FrameLayout.onMeasure(FrameLayout.java:310) 
    at android.view.View.measure(View.java:16540) 
    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5137) 
    at android.widget.FrameLayout.onMeasure(FrameLayout.java:310) 
    at android.support.v7.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:135) 
    at android.view.View.measure(View.java:16540) 
    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5137) 
    at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1404) 
    at android.widget.LinearLayout.measureVertical(LinearLayout.java:695) 
    at android.widget.LinearLayout.onMeasure(LinearLayout.java:588) 
    at android.view.View.measure(View.java:16540) 
    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5137) 
    at android.widget.FrameLayout.onMeasure(FrameLayout.java:310) 
    at android.view.View.measure(View.java:16540) 
    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5137) 
    at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1404) 
    at android.widget.LinearLayout.measureVertical(LinearLayout.java:695) 
    at android.widget.LinearLayout.onMeasure(LinearLayout.java:588) 
    at android.view.View.measure(View.java:16540) 
    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5137) 
    at android.widget.FrameLayout.onMeasure(FrameLayout.java:310) 
    at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2291) 
    at android.view.View.measure(View.java:16540) 
    at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:1942) 
    at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1132) 
    at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1321) 
    at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1019) 
    at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5725) 

file di layout

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" 
android:weightSum="11" 
android:paddingTop="16dp" android:paddingBottom="16dp" 
android:gravity="center_horizontal" 
android:layout_width="match_parent" android:layout_height="wrap_content"> 

<ImageView 
    android:id="@+id/iv_answer_circle" 
    android:src="@drawable/ic_dot" 
    android:layout_gravity="center" android:layout_weight="2" 
    android:layout_marginLeft="16dp" android:layout_marginRight="16dp" 
    android:layout_width="0dp" android:layout_height="wrap_content" /> 

<TextView android:id="@+id/tv_poll_answer" 
    android:layout_weight="6" 
    android:layout_width="0dp" android:layout_height="wrap_content" /> 

<TextView android:id="@+id/tv_poll_answer_num" 
    android:layout_weight="1" 
    android:layout_marginLeft="16dp" android:layout_marginRight="8dp" 
    android:layout_width="0dp" android:layout_height="wrap_content" /> 

<TextView android:id="@+id/tv_poll_answer_percent" 
    android:layout_weight="2" 
    android:layout_marginRight="16dp" 
    android:layout_width="0dp" android:layout_height="wrap_content" /> 

</LinearLayout> 

EDIT 2: il codice della mia classe adattatore.

public class PollAnswersAdapter extends ArrayAdapter<PollAnswerItem> { 

    private Context context; 
    private ArrayList<PollAnswerItem> data; 


    public PollAnswersAdapter(Context context, ArrayList<PollAnswerItem> data) { 
     super(context, -1, data); 
     this.context = context; 
     this.data = data; 
    } 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
     LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 

     View rowView = inflater.inflate(R.layout.row_answer, parent, false); 

     ImageView ivCircle = (ImageView) rowView.findViewById(R.id.iv_answer_circle); 
     TextView tvAnswer = (TextView) rowView.findViewById(R.id.tv_poll_answer); 
     TextView tvNums = (TextView) rowView.findViewById(R.id.tv_poll_answer_num); 
     TextView tvPercent = (TextView) rowView.findViewById(R.id.tv_poll_answer_percent); 

     tvAnswer.setText(data.get(position).getAnswer()); 
     tvNums.setText(data.get(position).getNum()); 
     tvPercent.setText(data.get(position).getPercent() + "%"); 
     tvPercent.setTextColor(ColorTemplate.PREDEFINED_COLORS[position]); 

     return rowView; 
    } 

} 
+2

V'è di più per la vostra traccia dello stack, in particolare una o più stanze 'Caused by'. Modifica la tua domanda e pubblica l'intera traccia dello stack. – CommonsWare

+0

Questo è tutto. Forse logcat non lo visualizza tutto perché è troppo grande? – Mes

+0

mostra anche il tuo file XML –

risposta

8

L'analisi di stack non vederlo, ma l'errore durante il gonfiaggio potrebbe provenire da drawable utilizzato nella ImageView, in questo caso:

android:src="@drawable/ic_dot" 

OP verificato questa intuizione, provando una diversa drawable che "sembra ok adesso ...".

4

Se si utilizza drawable vettore, utilizzare

app:srcCompat="@drawable/ic_dot" 

invece di

android:src="@drawable/ic_dot" 
+0

Questo funziona perfettamente per me. Grazie –

3

binario linea di file XML # 0: errore di classe di gonfiaggio imageview

si deve vedi se la tua immagine è diventata drawable-v23 o v24 che potrebbe essere più alta del tuo livello os mobile, M Ake sicuri di evitare immagine versione drawable creando nel progetto

esempio Nella cartella drawable ~> "ic_contact (V24)"

+0

Hai salvato la mia giornata, grazie !! –

0

uso

app:srcCompat="@drawable/ic_dot" 

non

android:src="@drawable/ic_dot" 
Problemi correlati