Я пытаюсь использовать разные макеты элементов списка в зависимости от версии ОС.
Итак, я создал различные макеты, связанные с условиями.
Один из них (в layout/search_result_list_item.xml
)
<?xml version="1.0" encoding="utf-8"?>
<include xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
layout="@android:layout/simple_list_item_1">
</include>
он включает в себя стандартный "simple_list_item_1".
В моем Java-коде макет связан со списком следующим образом:
adapter = new SimpleCursorAdapter(getActivity(),
R.layout.search_results_list_item,
null,
from,
to,
0);
Когда отображается элемент списка, генерируется следующее исключение:
android.view.InflateException: Binary XML file line #2: Error inflating class include
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:576)
at android.view.LayoutInflater.inflate(LayoutInflater.java:385)
at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
at android.support.v4.widget.ResourceCursorAdapter.newView(ResourceCursorAdapt
Что не так? не может использоваться как корневой элемент? несмотря на то, что ADT позволяет это.