2013-05-19 7 views
2

android-studio 및 HoloEverywhere + ActionBarSherlock과의 전투에서 마침내 모든 것을 설정했습니다. holoeverywhere 클래스는 android-studio에서 찾을 수 있습니다. 그러나에 "확인"또는, 나는 다음과 같은 오류가 점점 오전 내 프로젝트의 "컴파일"Android-Studio : Gradle이 HoloEverywhere를 찾지 못했습니다.

Gradle: Error retrieving parent for item: No resource found that matches the given name 'Holo.Theme'. 
Gradle: No resource found that matches the given name: attr 'actionBarSize'. 
Gradle: Error retrieving parent for item: No resource found that matches the given name 'Holo.Theme.Light'. 
Gradle: No resource found that matches the given name: attr 'actionBarSize'. 

이제 내 themes.xml 파일에, 나는 Holo.ThemeHolo.Theme.Light에서 상속 어떤 스타일을 만들 수 있습니다. 이클립스에서 작동했는데, HoloEverywhere가 발견되어 내 프로젝트의 의존성으로 추가 되었기 때문에 왜 gradle에서 이러한 정의를 찾을 수 없습니까?

코드는 평소와 같이이다 :

<style name="MyTheme" parent="Holo.Theme.Light"> 
... 
    <item name="actionBarSize">48dip</item> 
    <item name="android:actionBarSize">48dip</item> 
... 
</style> 

여러분의 도움에 감사드립니다!


그런데 스타일은 편집기에서 불평하지 않기 때문에 android-studio에서 찾을 수 있습니다. 내가 만들거나 컴파일 할 때만 이러한 오류가 나타납니다.


도움이 될 수 있습니다 또 한가지 : 나는 XML에서 HoloEverywhere 물건을 제거 시도하고, 컴파일하고 Gradle을 또한 자바 클래스에 대해 불평했다. 따라서, 마치 gradle이 HoloEverywhere를 찾지 못하는 것처럼 보입니다. build.gradle이나 다른 것에 추가해야합니까?

+0

당신이 구조를 프로젝트로 이동하는 경우, 안드로이드 라이브러리로 표시 모듈은 무엇입니까? 목록에서 확장하고 Android 아이콘을 클릭하고 올바르게 표시되었는지 확인하십시오. 또한 앱의 모듈에 대한 요구 사항으로 표시되어야합니다. – Josh

+0

예, 내 앱이 사용하는 모든 모듈이 라이브러리로 표시됩니다. 그들은 "안드로이드"패싯을 가지고 있지만 안드로이드 - 그레이들 패싯은 그렇지 않습니다. 왜냐하면 그들은 gradle 프로젝트가 아니기 때문입니다. 모두 내 앱의 종속성으로 표시되어 있습니다. 그렇지 않으면 android-studio에서 편집기에서이를 인식하지 못합니다. – janoliver

답변

1

프로젝트의 build.gradle 파일에 라이브러리 리소스 경로를 추가

sourceSets { 
    main { 
     res.srcDirs = ['src/main/res','(library-res-path)'] 
    } 
} 
+0

"library-res-path"의 예를 들려 줄 수 있습니까? – AfzalivE

+1

[This] (http://developer.android.com/images/tools/project-layout.png)는 gradle 프로젝트 구조입니다. 라이브러리 폴더를 MyApplication으로 복사하면 'library-res-path'가됩니다. MyLibrary/(res-path-path). –

+0

아. 라이브러리 폴더를 프로젝트 폴더에 복사 할 필요가 없다는 인상하에있었습니다. 그렇게하면 자동으로 해결됩니다. – AfzalivE

관련 문제