2016-06-03 2 views
5

Я знаю, что есть другие вопросы по SO, которые спрашивают одно и то же. Я уже смотрел на большинство из них.InflateException: двоичная строка XML-файла # 8: ошибка раздувания класса ImageView

Большинство ответов вызывает ошибки памяти. Я не вижу, как ImageView, который загружает только небольшую иконку (24x24 пикселя), может сделать что-то вроде этого.

Но я бы хотел опубликовать stacktrace, может быть, кто-то еще может идентифицировать то, что я не могу и помогу мне.

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) 

Компоновка файл

<?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: код моего класса адаптера.

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

Существует больше вашего трассировки стека, в частности, одну или несколько строчек 'Caused by'. Измените свой вопрос и опубликуйте всю трассировку стека. – CommonsWare

+0

Вот и все. Может быть, logcat не отображает все это, потому что он слишком велик? – Mes

+0

показать ваш файл XML также –

ответ

8

трассировка стека не показывает, но ошибка при наполнении может исходить от Drawable, используемого в ImageView, в данном случае:

android:src="@drawable/ic_dot" 

OP испытал это догадка, пытаясь другой который «кажется ОК прямо сейчас ...».

4

Если вы используете вектор вводимого коэффициента, используйте

app:srcCompat="@drawable/ic_dot" 

вместо

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

Это отлично работает для меня. Спасибо –

3

двоичный файл XML строка # 0: ошибка класса накачивания ImageView

вы должны посмотрите, станет ли ваше изображение привлекательным - v23 или v24, который может быть выше вашего мобильного уровня os, M аке уверены, чтобы избежать создания Drawable версии изображения в проекте

пример В вытяжке папке ~> "ic_contact (V24)"

+0

Вы спасли мой день, спасибо! –

0

использование

app:srcCompat="@drawable/ic_dot" 

не

android:src="@drawable/ic_dot"