【发布时间】:2017-09-01 13:34:50
【问题描述】:
当我为 Android 2.2 编写我的第一个 Android 应用程序时,我的活动必须使用 extends AppCompatActivity,因为在 Android 2.2 中不提供片段。
如今,许多为 Android 4.0 和更高版本编写的应用程序都使用 extends AppCompatActivity 而不是 extends Activity。既然 Android 4 支持 Fragments 和 Styles 还需要使用AppCompatActivity吗?
Android Studio 向导还会为AppCompatActivity 生成代码。
注意:这个问题不是关于一般的“AppCompat”(如 Android 6 权限支持,它只是关于活动和片段处理。
[更新]
我的问题真正是关于 concreate 示例,说明 android-4.0 下的 AppCompatActivity Activity 可以做什么,而不是带有if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.XXX) 的 android-4.0 Activity 不能做什么。我发现AppCompatActivity 添加了get/setSupportXXXX
到目前为止,我得到的唯一具体示例是使用 Material Design 视图。
【问题讨论】:
-
AppCompatActivity以透明的方式启用了许多向后兼容功能。例如,实现 4.0 中不可用的 Material Design 视图和功能。因此,使用它仍然是一个好习惯。 -
反对票有什么解释吗?谁应该将问题重新表述为“不使用 AppCompatActivity 的缺点是什么”更好?
-
今天许多为 Android 4.0 和更高版本编写的应用程序都扩展了 AppCompatActivity。你确定???