2012-05-22 2 views
3

나는이 블로그 게시물 다음의 액션 바의 스타일을 시도 해요 :Android - 누락 된 부모 테마?

http://android-developers.blogspot.com/2011/04/customizing-action-bar.html

을이 소스 코드 :

svn checkout http://styled-action-bar.googlecode.com/svn/trunk/ styled-action-bar-read-only

을 그러나, 나는 /res/values/styles.xml에서 문제를 얻고있다.

이 :

<!-- style for the tabs --> 
<style name="MyActionBarTabStyle" parent="android:style/Widget.Holo.Light.ActionBarView_TabView"> 
    <item name="android:background">@drawable/actionbar_tab_bg</item> 
    <item name="android:paddingLeft">32dp</item> 
    <item name="android:paddingRight">32dp</item> 
</style> 

함께 erroring되어 다음 대답을 사용하여, 그러나

Error retrieving parent for item: No resource found that matches the given name 'android:style/Widget.Holo.Light.ActionBarView_TabView'.

, 안드로이드의 소스를 통해 파고, 나는 테마가 실제로 존재한다는 것을 볼 수있다 :

https://stackoverflow.com/a/7149389/420001

내가 프로젝트에서 변경 한 것은 android-11에서 android-14으로 이동 한 다음 Eclipse에서 "Android"> "Fix Project Properties"를 실행하는 것뿐입니다. 그 답변에 링크 된 레포는 스타일을 나열하는 것이 지점 마스터에 있으므로 테마가 근거가없는 이유를 알 수 없습니다.

테스트 용으로, 나는이 코드를 배경으로 드로어 블을 뺀 android-14 타겟팅 앱에 넣었으며 동일한 오류가 발생합니다.

답변

8

https://stackoverflow.com/a/7837756/1003511의 링크에 따르면 Widget_Holo_Light_ActionBar_TabView은 있지만 Widget_Holo_Light_ActionBarView_TabView은 없습니다. 자습서가 작성된 이후에 자원의 이름이 변경되었을 수 있습니다. API 레벨 13 이후에 추가 "보기"가없는 버전이 포함되었다고합니다. 튜토리얼이 원래 11로 작성된 경우 13에 이름이 바뀌었을 가능성이 있으며, 14 세 이후로 이름이 변경된 버전 만 볼 수 있습니다. 나는 관계없는 "보기"를 제거하고 코드가 실행되는지 확인하려고합니다.

+1

빙고. '위젯. 홀로. 라이트. 액션 바. 탑뷰 '가 그랬어. 감사! – Josh

2

당신은 당신이 안드로이드 스타일로 볼 것인지 지정하는 '@'문자 누락 될 수 있습니다 : 부모의 스타일이 여기에 API 문서에 나열되어있는 경우

또한 더블 체크 볼 수 있습니다 를 http://developer.android.com/reference/android/R.style.html

이름이 약간 잘못 나온 것 같습니다.

관련 문제