2013-09-18 2 views
14

Я использую три библиотеки в моем проекте:Ошибка синтаксического анализа XML: несвязанный префикс на библиотеке

a. ViewPager 
b. SherlockActionBar 
c. PagerSlidingTabStrip 

В моем макета XML, я получаю следующее error parsing XML здесь:

<com.astuetz.viewpager.extensions.PagerSlidingTabStrip 
    android:id="@+id/strips" 
    android:layout_width="match_parent" 
    android:layout_height="48dip" 
    app:indicatorColor="#FF9326" 
    app:textAllCaps="false" /> 

Я реализовал библиотека такая же, как две другие библиотеки, используемые в проекте. Остальные две библиотеки работают плавно. Ошибка существует только внутри этого. Пожалуйста помоги.

Полный XML макет:

<LinearLayout 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:orientation="vertical" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    tools:context=".MainSlider" > 

    <com.astuetz.viewpager.extensions.PagerSlidingTabStrip 
     android:id="@+id/strips" 
     android:layout_width="match_parent" 
     android:layout_height="48dip" 
     app:indicatorColor="#FF9326" 
     app:textAllCaps="false" /> 

    <android.support.v4.view.ViewPager 
     android:id="@+id/pager" 
     android:layout_width="fill_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" /> 

</LinearLayout> 

Я уже пытался очистки проекта, повторно добавление библиотеки в рабочую область и т.д.

ответ

61

Try для добавления пользовательских свойств ссылки с помощью res-auto Xmlns схемы

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    tools:context=".MainSlider" > 

    <com.astuetz.viewpager.extensions.PagerSlidingTabStrip 
     android:id="@+id/strips" 
     android:layout_width="match_parent" 
     android:layout_height="48dip" 
     app:indicatorColor="#FF9326" 
     app:textAllCaps="false" /> 

    <android.support.v4.view.ViewPager 
     android:id="@+id/pager" 
     android:layout_width="fill_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" /> 

</LinearLayout> 
+3

проклятый ... это сработало ... Я просто удалил проект и теперь перезагрузил его, теперь чувствую себя глупо. 'xmlns: app' было то, что все, что ему нужно? Большое спасибо :) –

+0

Да, мы стараемся использовать пользовательские свойства вида tht y. –

14

Добавить

xmlns:app="http://schemas.android.com/apk/res-auto" 

к корневой компоновке xml.

0

У меня не было LinearLayout как мой XML-элемент root.
Вместо этого я использовал android.support.v4.view.ViewPager, потому что использовал AppCompat Library.

Так, это было то, что я сделал:
** Я включил tools:context=".classname" линию и вот где Error parsing XML: unbound prefix приходит из (частично). Это привело, когда вы referrence на путь, что Затмение/Studio не может увидеть когда он строит свой XML макет.

Решение:
Я добавил xmlns:tools="http://schemas.android.com/tools" указать ААТ к моему tools место, и мы были хорошо идти!

FINAL КОД:

<android.support.v4.view.ViewPager 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:id="@+id/pager" 
    xmlns:tools="http://schemas.android.com/tools" 
    tools:context=".home" 
    /> 
0

Корневой элемент каждого XML должны содержать:

xmlns:android="http://schemas.android.com/apk/res/android" 

И вы можете использовать android атрибуты после.

Смежные вопросы