Как прекратить использование AppCompat в Android Studio?
Я новичок в разработке Android, и я пытаюсь следовать руководству по разработке Android в Android Studio, в частности попытка настроить панель действий.
мой minSdkVersion
is 15
, говорится в build:gradle
(Module:app) поэтому я бы подумал, что мне не нужно будет использовать поддержку совместимости приложений, но мою тему, как говорится в styles.xml
is <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
и Я не могу изменить его на любой Holo whitout сбой моего приложения в любое время, когда я его запускаю.
кроме того, с помощью вот этот!--8-->Я не могу использовать android:showAsAction
(он просто не работает) и вместо этого нужно использовать app:showAsAction
и вся библиотека поддержки Android.
спасибо заранее.
2 ответов
CommonsWare предоставил правильные шаги, но я все еще сражался, поскольку не было достаточно деталей для меня, чтобы точно знать, что делать (будучи новым для Android Studio и Android development).
я нашел сообщение в блоге, которое объясняет детали здесь, и это сработало для меня: https://mobiarch.wordpress.com/2015/04/17/removing-support-library-in-android-studio
вот что он говорит (я добавил дополнительную помощь):
открыть сборки.Gradle в из проекта. Найдите раздел зависимости.
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.0.0'
}
удалите строку библиотеки совместимости. После этого раздел должен выглядеть так.
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
}
сохранить и закрыть.
по умолчанию приложение использует тему, которая доступна из библиотеки поддержки. Это недоступно из основного API. Так что мы должны это исправить. Открыть res/values/styles.xml
. Тег style будет выглядеть так:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
</style>
изменить родителя на тему это доступно из основного SDK. Например:
<style name="AppTheme" parent="android:style/Theme.Holo.Light">
<!-- Customize your theme here. -->
</style>
переименовать свойства в xml-файлах активности, таких как app:showAsAction
to android:showAsAction
.
экстент ваших классов активности от Activity
вместо ActionBarActivity
и AppCompatActivity
. Вам нужно нажать Alt + Enter на Activity
после того, как вы внесли изменения, чтобы добавить импорт android.приложение.Активность в верхней части файла. Смотрите пример ниже:
изменения:
import android.support.v7.app.ActionBarActivity;
public class DisplayMessageActivity extends ActionBarActivity {
.
.
.
}
в:
import android.app.Activity;
public class DisplayMessageActivity extends Activity {
.
.
.
}
и то же самое для любой другой деятельности, которая расширяет ActionBarActivity
и AppCompatActivity
наконец, выполнить Build | Clean Project
и Build | Rebuild Project
для сортировки текущих ошибок сборки.
Шаг #1: измените тему от Theme.AppCompat
Шаг № 2: Удалить appcompat-v7
из списка dependencies
в своем app
модуль
Шаг #3: Измените все действия, чтобы не наследовать от AppCompatActivity
или ActionBarActivity
, но вместо этого наследовать от чего-то другого, например Activity
Шаг #4: измените все ресурсы меню, заменив app:
С android:
Шаг #5: выполните чистую перестройку (сборка > чистый проект) и исправьте любые затяжные ошибки компиляции, вызванные вышеуказанными четырьмя шагами
вот пример проекта который использует собственную панель действий.