2011-01-30 6 views
34

해당 styles.xml 파일에 정의 된 여러 스타일/테마를 포함하는 Android Library Project이 있습니다. 다른 XML 레이아웃이나 매니페스트 파일에이 스타일을 참조 할 때 라이브러리 프로젝트를 사용하는 경우Android 라이브러리 프로젝트를 사용하는 경우 어떻게 xml 리소스를 제대로 참조합니까?

일반적으로, 당신은 단지 android:theme="@style/TheNameOfTheStyle"

작성합니다, 어떻게 종속 프로젝트가 제대로 이제 스타일을 참조합니까? android:theme="@style/TheNameOfTheStyle"으로 남겨두면 그 이름과 일치하는 리소스가 없다는 오류가 발생합니다.

나는이 같은 질문은 @string 같은 다른 참조, @color 등

감사

적용 추측

편집 : 그냥 정상처럼 참조 할 생각되지만 것으로 보인다 확인 있도록

Error: No resource found that matches the given name (at 'theme' with value '@style/ThemeName').

(마른 세수) 편집

가 : 이클립스 콘솔 날이 오류를주고있다

Eclipse에서 "Clean Project"가 필요했습니다. 이제 효과가 있습니다.

+0

로 추가되어 있는지 확인하는 것입니다 사용 다른 리소스를 @ [packagename.] type/id로 참조 할 수 있어야합니다. 여기서 package name은 현재 앱 패키지 인 경우 생략하고 라이브러리 프로젝트의 페이지 이름을 사용할 수 있습니다. 하지만, 나에게 도움이되지 않는다. 프로젝트를 지우거나 재건하지도 않는다 :-( –

+0

@Andrew 그런 패키지 이름을 넣을 필요가 없다. 리소스가 라이브러리 프로젝트에 있다면, 보통 자신의 프로젝트에있는 것처럼 마치 – cottonBallPaws

+0

참고 : 첫 번째 링크는 더 이상 사용되지 않음 – user905686

답변

15

리소스를 추가하거나 프로젝트를 정리 한 후에 프로젝트를 빌드하는 것이 중요합니다. "무언가"가 잘못되었을 때 Eclipse를 다시 시작하는 것도 좋은 생각입니다.

또한 Android는 리 소스를 병합하므로 빌드되는 마지막 프로젝트가 이름을 "획득"합니다. 이러한 이유로 모든 리소스에 어떻게 든 접두사를 붙여 두는 것이 좋습니다.

+1

솔루션으로 내 특정 문제가 해결되지 않았지만 (내 문제가 어떻게 해결되었는지에 대한 내 질문에 편집 된 내용 참조) 사용자의 대답이 이 질문에 대한 길을 찾은 다른 사람들을 도왔습니다. 그래서 나는 당신의 대답을 받아 들일 것입니다. – cottonBallPaws

2

방금 ​​동일한 문제가 발생했지만 라이브러리 프로젝트와 일반 프로젝트가 일치하는 : Target Build Property를 설정할 때까지 Eclipse에서 정리가 작동하지 않았습니다.

0

방금 ​​Android Studio에서이 문제가 발생했습니다. Android Studio는 android.library = true라는 project.properties에도 불구하고 내 라이브러리 프로젝트가 라이브러리라는 것을 인식하지 못했습니다.

프로젝트 구조의 "라이브러리 여부"확인란을 선택하여이 문제를 해결했습니다.

enter image description here

3

나는 인 IntelliJ가 무엇 나를 위해 일한 것은 일반적으로 자원을 참조하고 당신을 말한다 라이브러리 내가 읽고있다 안드로이드 책에서 프로젝트의 종속성

관련 문제