我正在开发一个旧的Android项目,你知道吗,当我在项目的所有类中通过 AppCompatActivity 更改 ActionBarActivity (已弃用)时会有什么影响? 谢谢。
答案 0 :(得分:0)
ActionBarActivity
(扩展AppCompatActivity
类)可以安全地使用向后兼容性类。它的弃用仅仅是您要求直接使用新AppCompatActivity
的提示。 AppCompatActivity
是一个新的,更通用的实现,它在内部使用AppCompatDelegate
类。
如果您开始新的开发,那么您应该立即使用新的AppCompatActivity
课程。如果您有机会更新自己的应用,请将新推荐的ActionBarActivity
替换为新活动。否则,您可以继续使用已弃用的活动,并且行为根本没有差异。
关于AppCompatDelegate
,它允许您在活动中使用新的有色小部件,既不是AppCompatActivity
也不是ActionBarActivity
。
例如,您从外部库继承了一个活动,而该活动依次从<{1}}继承而不是,但您希望此活动具有着色的材质小部件(视图)。要实现这一目标,您需要在活动中创建AppCompatActivity
的实例,覆盖该活动的方法,例如AppCompatDelegate
,addContentView()
等。(请参阅setContentView()
javadoc方法列表),并在这些重写方法内转发对内部AppCompatDelegate
实例的调用。 AppCompatDelegate
将完成其余工作,您的“旧时尚”活动将“物化”。