在 Android 中,扩展 Lifecycler Activity、Activity、ActionBarActivity 和 AppCompactActivity 的主要区别是什么?这些类在使用方面有何不同?
最佳答案
- 扩展
ActionBarActivity
给你ActionBar
每个 API 级别的功能 >= 7 - 通过扩展
Activity
您可以避免向您的项目添加额外的项目/库,但您将缺少ActionBar
低于 11 的 API 级别
编辑:更多细节:
ActionBarActivity
是 Support Library 的一部分.支持库用于在旧平台上提供新功能。例如,ActionBar
是在 API 11 中引入的,默认情况下是 Activity
的一部分(实际上取决于主题)。相比之下,旧平台上没有 ActionBar
。所以支持库添加了一个Activity
的子类(ActionBarActivity
),提供ActionBar
的功能和ui
edit2:2015 年 4 月更新 - ActionBarActivity
似乎在 Support Library 的 revision 22.1.0
中已弃用。 AppCompatActivity
应改为使用。
edit3: 2017 年 8 月更新 - LifecycleActivity是 LifecycleOwner但是:
"Since the Architecture Components are in alpha stage, Fragment and AppCompatActivity classes cannot implement it (because we cannot add a dependency from a stable component to an unstable API). Until Lifecycle is stable, LifecycleActivity and LifecycleFragment classes are provided for convenience. After the Lifecycles project is released, support library fragments and activities will implement the LifecycleOwner interface; LifecycleActivity and LifecycleFragment will be deprecated at that time."
(复制自架构组件指南)
关于android - 扩展 LifecycleActivity、Activity、ActionbarActivity 和 AppCompactActivity 的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23089547/