2016-06-03 3 views
5

Ich weiß, dass es noch andere Fragen zu SO gibt, die dasselbe fragen. Ich habe mir die meisten schon angesehen.InflateException: Binäre XML-Dateizeile # 8: Fehler beim Aufblasen der Klasse ImageView

Die meisten Antworten rufen über Speicherfehler auf. Ich kann nicht sehen, wie ein ImageView, das nur ein kleines Symbol (24x24 Pixel) lädt, etwas ähnliches machen kann.

Aber ich würde gerne den Stacktrace hier posten, vielleicht kann jemand anderes etwas identifizieren, das ich nicht kann und mir helfen.

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) 

Layout-Datei

<?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: Der Code meiner Adapterklasse.

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

Es gibt noch mehr zu Ihrem ist Stack-Trace, insbesondere eine oder mehrere "Verursacht von" Strophen. Bitte bearbeiten Sie Ihre Frage und veröffentlichen Sie den gesamten Stack-Trace. – CommonsWare

+0

Das ist alles. Vielleicht zeigt logcat nicht alles an, weil es zu groß ist? – Mes

+0

zeigen Sie Ihre XML-Datei auch –

Antwort

8

Der Stack-Trace ist es nicht zeigen, aber der Fehler während der Inflation kommen könnte von ziehbar in der ImageView verwendet, in diesem Fall:

android:src="@drawable/ic_dot" 

OP diese Vermutung getestet, indem Sie einen anderen Versuch Drawable, die "scheint ok jetzt ...".

4

Wenn Sie Vektor Drawables verwenden, verwenden

app:srcCompat="@drawable/ic_dot" 

statt

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

Das funktioniert perfekt für mich. Danke –

3

binäre XML-Datei Zeile # 0: Fehler aufblähenden Klasse Imageview

Sie haben Überprüfen Sie, ob Ihr Bild zu einem Zeichensatz wurde - v23 oder v24, der möglicherweise höher ist als der Wert Ihres mobilen Betriebssystems ake sicher

Erstellen ziehbar Version Bild in Projekt zu vermeiden

Beispiel In ziehbar Ordner ~> "ic_contact (v24)"

+0

Du hast meinen Tag gerettet, danke !! –

0

Verwendung

app:srcCompat="@drawable/ic_dot" 

nicht

android:src="@drawable/ic_dot" 
Verwandte Themen