在android studio 0.3.1中使用ActionbarSherlock的编译错误
我只是用AndroidStudio创建了一个新项目,并按照我的建议在build.gradle中添加了两行代码 我的build.gradle如下所示:在android studio 0.3.1中使用ActionbarSherlock的编译错误,android,actionbarsherlock,android-studio,Android,Actionbarsherlock,Android Studio,我只是用AndroidStudio创建了一个新项目,并按照我的建议在build.gradle中添加了两行代码 我的build.gradle如下所示: buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.6.+' } } apply plugin: 'android' repositories {
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.6.+'
}
}
apply plugin: 'android'
repositories {
mavenCentral()
}
android {
compileSdkVersion 18
buildToolsVersion "18.1.1"
defaultConfig {
minSdkVersion 7
targetSdkVersion 18
}
}
dependencies {
compile 'com.android.support:appcompat-v7:+'
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
compile 'com.android.support:support-v4:18.0.+'
}
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.Sherlock.Light.DarkActionBar">
<!-- Customize your theme here. -->
</style>
</resources>
当我尝试编译时,会出现以下错误:
Compilation completed with 75 errors and 0 warnings in 14 sec
/Users/anthony/android/TestProject/Testqirc/build/exploded-
bundles/ComAndroidSupportAppcompatV71800.aar/res/values/values.xml
Gradle: Attribute "titleTextStyle" has already been defined
....
....
Gradle: Attribute "activityChooserViewStyle" has already been defined
将依赖项更改为
dependencies {
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
compile 'com.android.support:support-v4:18.0.+'
}
我得到这个错误:
Gradle:检索项的父项时出错:未找到该项的资源
匹配给定名称“Theme.AppCompat.Light.DarkActionBar”
另见
关于使用ActionBarSherlock或AppCompat的评论是正确的;最好选择其中一个。如果使用“新建项目向导”创建了项目,则该项目将创建一个依赖于AppCompat的项目,如果要切换到ABS,则需要手动删除依赖项。该DarkActionBar引用自src/main/res/layout/fragment\u main.xml
您应该删除此行:
compile'com.android.support:support-v4:18.0.+'
确保删除在styles.xml文件上创建项目时设置的默认主题.AppCompat.Light.DarkActionBar
父主题
My styles.xml的结尾如下:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.6.+'
}
}
apply plugin: 'android'
repositories {
mavenCentral()
}
android {
compileSdkVersion 18
buildToolsVersion "18.1.1"
defaultConfig {
minSdkVersion 7
targetSdkVersion 18
}
}
dependencies {
compile 'com.android.support:appcompat-v7:+'
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
compile 'com.android.support:support-v4:18.0.+'
}
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.Sherlock.Light.DarkActionBar">
<!-- Customize your theme here. -->
</style>
</resources>
我在试图在Studio中导入和构建终极秒表示例时遇到了相同的问题(重复属性)。部分工作是(这是我第一次)弄清楚如何将库导入Studio(有点离题——但Youtube上有一段很好的视频演示了如何做到这一点(下面的链接)
我的底线-出于某种原因,我在ActionBarSherlock库的build.gradle文件中添加了以下两行:
dependencies {
compile 'com.android.support:appcompat-v7:20.+'
compile 'com.android.support:support-v4:20.+'
}
事实证明,在V7支持代码中似乎已经有ActionBarSherlock的副本-因此您得到了DUP。这对我来说很有效-只需退出V7支持:
dependencies {
compile 'com.android.support:support-v4:20.+'
}
下面是指向将库添加到Studio的过程的链接:
Youtube:如何向Android Studio添加库Mohammed Isa
干杯,Jim A请更新到最新版本的play services和appcompat
您应该使用或ABS或appcompat。关于上一个错误-看起来像是您从appcompat扩展了一些主题,或者尝试干净的重新构建哦,还有一件事-您必须保留V4 compat行,因为ActionBarSherlock库显然在一个名为“Watson.java”的文件(这里是双关语)中扩展了V4版本的FragmentActivity。干杯,