我如何在同一个项目中使用android支持库v4和v13?
我试图使用v4和v13支持库,而ADT给我的错误是:
Found both android-support-v4 and android-support-v13 in the dependency list.
Because v13 includes v4, using only v13.
我需要使用两者,因为我必须使用:
import android.support.v4.app.ActionBarDrawerToggle;
import android.support.v4.widget.DrawerLayout;
import android.support.v13.app.FragmentPagerAdapter;
我试图添加库作为一个外部jar,但后来我得到NoClassDefFoundError
我可以同时使用这两个库吗?或者我可以替换其中一些导入吗?
提前致谢
编辑:
你好,感谢你的快速答案
我以前试过使用android.support.v4.app.FragmentPagerAdapter,但后来又遇到了另一个问题。
我有一个主要的活动,它实现了一个导航抽屉,并使用FrameLayout来加载碎片。 该活动具有显示片段的方法。 该方法有下一个代码:
if (fragment != null) {
FragmentManager fragmentManager = getFragmentManager();
fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).commit();
如果我使用android.support.v4.app.FragmentPagerAdapter,我也需要使用它
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
我在使用getFragmentManager()时遇到了下一个错误。
Type mismatch: cannot convert from android.app.FragmentManager to android.support.v4.app.FragmentManager
我读过我可以使用getSupportFragmentManager(),但我得到另一个错误:
The method getSupportFragmentManager() is undefined for the type ActivityMain
这就是我想使用v4和v13库的原因
解决了:
解决方案是让ActivityMain从FragmentActivity扩展并仅使用v4支持库
如果ActivityMain
类正在扩展FragmentActivity
,则将定义getSupportFragmentManager()
。
根据文档, FragmentPagerAdapter
也支持lib v4(请参阅文档)。 因此,如果这是您使用v13的唯一原因 - 您可以轻松摆脱它。
上一篇: How can I use android support libraries v4 and v13 in the same project?
下一篇: What iOS SDK fingerprinting features are unique per device?