2013-09-18 2 views
4

Я пытаюсь реализовать ActionBar через библиотеку поддержки v7. Потому что я хочу поддержать приложение для Android 2.1 (API уровня 7) и выше.неожиданный префикс пространства имен с панелью действий

Я читал в http://developer.android.com/guide/topics/ui/actionbar.html следующее: «Использование атрибутов XML из библиотеки поддержки Обратите внимание, что вышеприведенный атрибут showAsAction использует собственное пространство имен, определенное в теге. Это необходимо при использовании любых атрибутов XML, определенных в библиотеке поддержки, поскольку эти атрибуты не существует в платформе Android на старых устройствах. Поэтому вы должны использовать свое собственное пространство имен в качестве префикса для всех атрибутов, определенных библиотекой поддержки ».

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:myapp="http://schemas.android.com/apk/res-auto" 
    xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item   
     android:id="@+id/refresh" 
     android:icon="@drawable/ic_navigation_refresh" 
     android:title="@string/refresh" 
     myapp:showAsAction="always"/> 
    <item 
     android:id="@+id/settings" 
     android:title="@string/settings" 
     myapp:showAsAction="always"/> 

    <item 
     android:id="@+id/logout" 
     android:title="@string/logout" 
     myapp:showAsAction="always"/> 
</menu> 

Eclipse показывает мне ошибку "Неожиданный префикс пространства имен" myapp ", найденный для элемента тега". Я не вижу, что я делаю неправильно.

+1

я нашел что-то подобное решение. Если я очищаю проект, ошибки исчезают, и я могу запустить свое приложение. Но когда я изменяю что-то совершенно другое в xml и сохраняю его, ошибки появляются снова, и их нужно снова очистить. – user2791366

ответ

0

** Вы должны добавить Xmlns: инструменты, а также инструменты: атрибут контекста для меню тега **

<menu xmlns:myapp="http://schemas.android.com/apk/res-auto" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" tools:context="com.companyname.myapp.MainActivity"> 

    **Here in xmlns:context you have replace companyname and MainActivity as per need ** 

    **Other wise you have to clean and rebuild your project because IDE shows such error when they didn't got perfect project workspace OR module ** 
Смежные вопросы