Android - 我将开发一个应用程序API API API与最新API之间的API。我有一个疑问。
之间的区别
1.Java类扩展AppcompatActivity
和
2.Java类扩展Activity
和
3.Java类扩展ActionBarActivity
。
如果有人给出明确的定义,我肯定会将答案记录为我的问题。
先谢谢。 :)
答案 0 :(得分:2)
ActionBarActivity
为您提供每个API级别的ActionBar
功能> = 7 Activity
,您可以避免向项目中添加其他项目/库,但是您在api级别低于11时缺少ActionBar
ActionBarActivity
是Support Library的一部分。支持库用于在旧平台上提供更新的功能。例如,ActionBar
是在API 11中引入的,默认情况下是Activity
的一部分(实际上取决于主题)。相比之下,较旧的平台上没有ActionBar
。因此,支持库添加了一个子类Activity(ActionBarActivity
),它提供了ActionBar
的功能和UI
ActionBarActivity
版本(扩展AppCompatActivity
类)可以安全地使用向后兼容性类。它的弃用仅仅是您直接使用新AppCompatActivity
的提示。 AppCompatActivity
是一种新的,更通用的实现,它在内部使用AppCompatDelegate
类。例如,您从外部库继承了一个活动,而该活动又不从AppCompatActivity
继承,但您希望此活动具有着色的材料小部件(视图)。要实现这一目标,您需要在活动中创建AppCompatDelegate
的实例,override
该活动的addContentView()
方法,例如setContentView()
,AppCompatDelegate
等。(请参阅AppCompatDelegate
javadoc获取完整的方法列表),并在这些重写方法内部转发对内部AppCompatDelegate
实例的调用。 String id = IConsoleConstants.ID_CONSOLE_VIEW;
IViewPart consoleView = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
.getActivePage().showView(id);
将完成余下的工作以及您的旧时尚"活动将被实现"。
答案 1 :(得分:1)
扩展AppcompatActivity
很好。AppcompatActivity
帮助我们在低api
中使用新功能。