2015-05-26 41 views
5

我正在关注Android课程,并且在Support Android 2.1 and Above部分下,我的Activity应该将ActionBarActivity类扩展为支持API-7之后的Action Bar。我应该用AppCompatActivity替换ActionBarActivity吗?

但是,documentation也说这个类已被弃用,我应该使用AppCompatActivity来代替。我很困惑,我应该使用哪一个,为什么?

+0

http://stackoverflow.com/questions/29797172/whats-the-enhancement-of-appcompatactivity-over-actionbaractivity –

回答

12

是的。你应该使用AppCompatActivity

AppCompatActivity是一个非常新的课程,android网站上的培训部分已经过时。

所有你会用ActionBarActivity做的事情都会在AppCompatActivity上大致相同。

对于差异,请阅读后它http://android-developers.blogspot.de/2015/04/android-support-library-221.html

+0

谢谢。当你在这里时,我怎样才能检查哪个版本的库是最新的?添加'compile'c​​om.android.support:appcompat-v7:22.1。+''行时,我有这个疑问。文件说20.something.something。 –

+0

目前,我没有任何地方,你可以检查什么是最新的。我通常会写'compile'c​​om.android.support:appcompat-v7:+',然后等待Gradle警告告诉我哪一个是最新的,然后更改它。 – Budius

+0

好的,非常感谢! –

0

我的理解是,你需要使用AppCompatActivity。如果其他支持库或类现在已被弃用,这意味着Android的人不会维护该代码或改进它。我从来没有真正使用过这些类。

我想你可能有一些丑陋的if语句来检查最终用户的API级别,并基于这些做出不同的方法调用。这听起来像是很多额外的工作。