关于IntelliJ 12 + ABS(ActionBarSherlock)设置有很多Q& A。
与this question类似但显示不同的错误。
总体编译和运行都没问题,但只有使用选项卡导航的活动(SherlockActivity implements ActionBar.TabListener
)会出现以下错误并导致崩溃。
请注意,我可以很好地使用常规SherlockActivity
节目。
“无法找到类'android.support.v4.app.FragmentActivity',从方法com.actionbarsherlock.internal.app.ActionBarWrapper $ TabWrapper.onTabReselected”引用每个重写方法({ {1}},onTabUnselected
,onTabSelected
)。
似乎android-support-v4没有被成功引用,但很难找到check / uncheck试错法。
我的IntelliJ项目设置如下。
1。 Library是ABS库文件夹的名称。
2。我的项目设置。
我将android-support-v4设置为提供。 我还能做些什么?
有些答案说删除android-support-v4 到我自己的项目,但它显示了onTabReselected
上的参考错误,因为import android.support.v4.app.FragmentTransaction
需要它。
答案 0 :(得分:14)
此配置不正确,android-support-v4
库的范围必须设置为编译,因为它不在Android上,并且必须包含在您的应用中。
必须从应用程序依赖项中删除android-support-v4
的第二个副本,它将通过为android-support-v4
启用导出选项的库模块提供给您的应用程序。< / p>
答案 1 :(得分:2)
当我想从google示例(链接:http://developer.android.com/training/implementing-navigation/lateral.html)检查/测试&#34; EffectiveNavigation&#34; -App时,我在Android Studio(版本1.1.0)中也遇到了这个问题
我必须做的是在路径中添加此代码段&#34;。\ EffectivNavigation \ app \ builde.gradle&#34;:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:support-v4:20.0.0'
}
所以整个build.gradle看起来像这样:
apply plugin: 'com.android.application'
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "com.example.android.effectivenavigation"
minSdkVersion 14
targetSdkVersion 14
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:support-v4:20.0.0'
}
您也可以使用
compile 'com.android.support:support-v4:20.+'
而不是
compile 'com.android.support:support-v4:20.0.0'
也许这个答案比其他答案对你更有帮助。
答案 2 :(得分:0)
我将adt / sdk / extras / android / support / v4 / android-support-v4.jar(adt应该指向android sdk)添加到Idea中Android SDK的类路径中。
答案 3 :(得分:0)
仅供记录 - 这解决了我的问题:(通过https://stackoverflow.com/a/35248120/2409397)
Build
&gt; Rebuild Project
。