我正在尝试将the Google "ActionBarCompat" sample code中的相同操作栏兼容性添加到我的某个项目中。
我的问题是我已经在我的主类中扩展MapActivity
,但ActionBarCompat的主类似乎要求你扩展ActionBarActivity
。
这是我的Java 101问题:我对Java有足够的了解,知道我不能有多重继承,但还不足以知道处理这种情况的理想方法。我的解决方案是在我的主类中扩展ActionBarActivity,然后使ActionBarActivity
扩展MapActivity
。这是正确的方法吗?如果是这样的话,如果我想要扩展其他内容,我是不是必须复制ActionBarActivity
?
感谢您考虑这个问题!
答案 0 :(得分:1)
是的,这是完全有效的方法。如果您想要一个不扩展MapActivity的ActionBarActivity类,则必须创建另一个类。我不认为这会导致很多代码重复(我猜你正在害怕)。对Android开发人员感到羞耻但是你需要编写自己的ActionBarHelper类。
答案 1 :(得分:1)
查看您提供的示例 - ActionBarActivity仅具有ActionBarHelper字段并在其上调用方法。尝试在MapActivity中执行相同的操作。
答案 2 :(得分:0)
使用“Peter Knego”的解决方案,并链接到此库:
https://github.com/lvillani/android-compat-actionbar
或者如果你使用Eclipse和svn: