5 ответов:
- расширения
ActionBarActivityдаетActionBars функциональность на каждом уровне API >= 7- расширение
Activityвы можете избежать добавления дополнительных проектов/библиотек в проект, но вам не хватаетActionBarна уровнях api ниже 11edit: Подробнее:
edit2: обновление апрель 2015 - это выглядит как
ActionBarActivityосуждается вrevision 22.1.0библиотеки поддержки.AppCompatActivityдолжен использоваться вместо этого.edit3: Обновление Августа 2017 -LifecycleActivity это LifecycleOwner но:
" поскольку компоненты архитектуры находятся в альфа-стадии, фрагмент и Классы AppCompatActivity не могут реализовать его (потому что мы не можем добавить зависимость от стабильного компонента к нестабильному API). До Жизненный цикл стабилен, LifecycleActivity и LifecycleFragment занятия для удобства гостей. После того, как проект жизненных циклов выпущенные, вспомогательные библиотечные фрагменты и мероприятия будут реализовывать Интерфейс LifecycleOwner; LifecycleActivity и LifecycleFragment будут будьте осуждены в то время."
(скопировано из руководства по компонентам архитектуры)
Если вы посмотрите внимательно, вы увидите это
public class ActionBarActivity extends FragmentActivity implements ActionBarDrawerToggle.DelegateProvider TaskStackBuilder.SupportParentableздесь вы можете прочитать о FragmentActivity: http://developer.android.com/reference/android/support/v4/app/FragmentActivity.html
и различия между активностью и FragmentActivity: разницу между активностью и FragmentActivity
кроме того, есть некоторые новые темы для укладки actionBar... https://developer.android.com/training/basics/actionbar/styling.html
Actionbar вводится на уровне API 11. com.андроид.поддержка: appcompat-v7:+ - это библиотека поддержки, которая позволяет вам иметь панель действий в вашем приложении для устройств, работающих на Android 3.0 или ниже. Итак, если вам нужна панель действий ниже уровня api 11, Ваша активность должна расширить ActionBarActivity.
Если вы нацелены на уровень api 11 и выше, то вам не нужно расширять ActionBarActivity и ссылка AppCompat. Вы можете просто расширить активность, и по умолчанию у вас будет actionabr.
проект Android Studio по умолчанию включает его автоматически в зависимости и расширяет ActionbarActivity вместо Activity, чтобы использовать его.
The
ActionBarActivityилиSupportActionBarActivityдополнительные методы и свойства, которые не являются в общемActivity. например методы для добавления вкладок присутствуют вActionBarActivityи не в общемActivity.главное отличие в том, что вы не получаете
ActionBarуниверсальныйActivity.
ActionBarActivity просто имеет больше библиотек поддержки и лучшее использование новых тем, доступных из api 11.
" в самой простой форме на панели действий отображается заголовок действия и значок приложения слева. Даже в этой простой форме панель действий полезна для всех действий, чтобы информировать пользователей о том, где они находятся, и поддерживать согласованную идентичность для вашего приложения."
вы используете библиотеку поддержки Android, когда вы приходите к Actionbaractivity . таким образом, использование библиотеки поддержки является ваше приложение может быть suport для максимального количества устройств. Библиотека поддержки дает вашему приложению силу обратной совместимости. Actionbaractivity дает вам многоплановую функцию, такую как переключатель Actionbardrawer и т. д.. есть больше доступных библиотек поддержки. смотрите эту ссылку .. и поделиться с вашим друзья...https://developer.android.com/tools/support-library/index.html
Comments