Próbuję użyć getActionBar(); Metoda i otrzymuję ten błąd: wymagany android.support.v7.app.ActionBar znalazł android.app.ActionBar. Jak mogę to poprawić?Android: wymagany android.support.v7.app.ActionBar został znaleziony android.app.ActionBar
Odpowiedz
Ten błąd występuje, ponieważ tworzysz obiekt i przekazujesz go do innej zmiennej referencyjnej klasy. Ponieważ getActionManager
podaje obiekt android.app.ActionBar
, ale próbujesz przypisać obiekt klasy android.app.ActionBar
do android.support.v7.app.ActionBar
.
Jednak obie te klasy zapewniają tę samą funkcjonalność. android.support.v7.app.ActionBar
Klasa jest używana, gdy nasza wersja min-sdk jest mniejsza niż api 11. Aby uzyskać obiekt ActionBar poniżej api 11, potrzebujemy obiektu klasy android.support.v7.app.ActionBar
.
Aby uzyskać pasek czynności, należy wykonać jedno z dwóch podejść.
import android.support.v7.app.ActionBar
i używaćgetSupportActionBar()
metody aktywność OD.iść do AndroidManifest.xml pliku i zmienić
<uses-sdk android:minSdkVersion="11" android:targetSdkVersion="19" />
i importowaćandroid.app.ActionBar
i używaćgetActionBar()
Jeśli obsługujesz poziomy API niższe niż 11 i będziesz musiał dodać bibliotekę wsparcia v4 do swojego projektu, aby użyć paska akcji.
import android.support.v7.app.ActionBar
Jeśli wspieranie tylko poziom API 11 i wyższa:
import android.app.ActionBar
Aby uzyskać więcej informacji, przejdź do Official Docs
Upewnij się, że masz minimalny poziom api w pliku manifestu jest powyżej 11. Ponieważ pakiet android.support.v7.app.ActionBar
jest obsługiwany tylko na poziomie aplikacji poniżej 11.
Więc jeśli chcesz użyć ActionBar z import android.app.ActionBar
musisz mieć minimalny api poziom 11 w pliku manifestu. W przeciwnym razie będziesz musiał dodać bibliotekę wsparcia v4 do swojego projektu, aby użyć paska akcji z pakietu android.support.v7.app.ActionBar
.
Jeśli działa API 11 i wyższy
import android.app.ActionBar;
Także jeśli stwierdza, że istnieje już być na pewno go usunąć
To już jest zjonizowany w [inna odpowiedź] (https://stackoverflow.com/a/27482395/711006). – Melebius
Chociaż ten fragment kodu może rozwiązać pytanie, [w tym wyjaśnienie] (http://meta.stackexchange.com/questions/114762/explaining-entirely-code-ans -answers) naprawdę pomaga poprawić jakość twojego posta. Pamiętaj, że odpowiadasz na pytanie przeznaczone dla czytelników w przyszłości, a te osoby mogą nie znać powodów sugestii dotyczących kodu. – Isma
- 1. Python TypeError: Wymagany argument "source" (pos 1) nie został znaleziony
- 2. Microsoft.DotNet.Props nie został znaleziony
- 3. Dlaczego getservletcontext nie został znaleziony?
- 4. Konstruktor nie został znaleziony typ
- 5. framework nie został znaleziony FirebaseAnalytics
- 6. Plik "SHK.h" nie został znaleziony
- 7. .h plik nie został znaleziony
- 8. com.google.android.gsf pakiet nie został znaleziony
- 9. Różnica między android.support.v7.app.AlertController.RecycleListView i android.support.v7.widget.RecyclerView
- 10. Klucz publiczny Android Source Repo GPG nie został znaleziony
- 11. Zasób Theme.AppCompat.Light nie został znaleziony w Android Studio
- 12. atrybut stylu "@android: attr/windowEnterAnimation" nie został znaleziony
- 13. Rozkład "pip == 7.1.0" nie został znaleziony i jest wymagany przez aplikację
- 14. Plik klasy nie został znaleziony w IntelliJ
- 15. IronPython sys._getframe nie został znaleziony
- 16. lib curl symbol nie został znaleziony
- 17. asp.net deploy - plik Main.Master.cs nie został znaleziony
- 18. Program g ++ nie został znaleziony w ścieżce
- 19. Seter nie został znaleziony dla klasy własności
- 20. typu narzędzi: BusyIndicator nie został znaleziony
- 21. Junit ant task - JUnitTask nie został znaleziony
- 22. Błąd dyld: obraz nie został znaleziony
- 23. wirtualny port com0com nie został znaleziony
- 24. WP7 (1): System.Windows.debug.resources nie został znaleziony?
- 25. Niestandardowy identyfikator wtyczki Gradle nie został znaleziony
- 26. Z klasy PHPUnit "mysqli" nie został znaleziony
- 27. Tomcat 7 setenv.sh nie został znaleziony
- 28. -setKornerRadius nie został znaleziony w widoku niestandardowym
- 29. facebookSDK 3.1.1 plik nie został znaleziony
- 30. ld: framework nie został znaleziony AudioUnit
to nie jest duplikat – Juvie22