2012-07-06 6 views
5

몇 가지 테마를 해당 활동에 사용하는 앱을 만들고 있습니다. ICS 이전 버전의 Android를 실행하는 휴대 전화에서 모두 멋지게 작동하지만 Galaxy Nexus (4.1 실행) 및 Nexus S (4.0.4 실행)에서 테마를 적용 할 때 어떤 이유로 배경이 항상 검은 색입니다.ICS에서 테마가 겉으로보기에 무시되고 있습니다.

는 여기가 작동하지 않습니다 사용하고 테마 중 하나입니다 :

<style name="BlueStyle" parent="@android:style/Theme.Holo.NoActionBar"> 
    <item name="android:background">@color/Blue</item> 
    <item name="android:textColor">@android:color/white</item> 
    <item name="android:textSize">16dip</item> 
</style> 

블루 색상이 내 res/values/colors.xml에 정의되어 있습니다. 주제는 res/values-v11/styles.xml에 등처럼 내 매니페스트에서 참조 :

<activity 
     android:name=".activity.SplashActivity" 
     android:theme="@style/BlueStyle" 
     android:configChanges="orientation|keyboardHidden|screenSize"/> 

그리고 같은 나는 사전 ICS에에서 같은 활동을 위해 잘 작동 (부모로 @android:style/Theme.NoTitleBar를 사용하여, res/values에서) 비슷한 테마 말했다 Android 버전. 레이아웃 파일에 들어가서 레이아웃 배경을 @color/Blue으로 만들지 만, 액티비티에 테마가 할당되어 있으면 여전히 검은 색이됩니다. 그러나 나는 테마를 @android:style/Theme.NoTitleBar으로 설정하면 Activity가 레이아웃 파일에서 강제로 파란색을 사용함을 발견했습니다.

또한 BlueStyle을 전체 응용 프로그램의 테마로 설정해 보았지만 아무런 차이가 없습니다.

이전에이 문제가 발생 했습니까? 이것은 v11 및 v11 이전의 테마를 모두 지원하려고 시도한 첫 번째 사례이므로 일부 분명한 오류가 발생할 수 있습니다.

편집 : 내 액티비티가 시작될 때 파란색 배경이 보이지만 배경이 검은 색으로 변하는 것을 보았습니다. 그 정보가 도움이되는지 확실하지 않습니다.

편집 # 2 : 또한 Galaxy Tab 10.1 3.2에서 테스트했는데 문제도 있습니다.

답변

1

겉 모양에서 테마 활동은 Honeycomb 이상에서 단순하게 깨졌습니다. 나는 활동 별 테마를 제거하고 스타일을 내 레이아웃 파일에 추가하여 내 문제를 "해결"했습니다.

이 문제가 발생하면 레이아웃에 적용하기 전에 AndroidManifest.xml의 Activities에서 테마를 제거해야합니다. 그렇지 않으면 문제가 지속됩니다.

-1

.xml에서 테마 옵션으로 선택한 맨 위에있는 테마 출력은 무엇입니까? 또한 드롭 다운 상자를 선택하고 open을 클릭 한 다음 declarationion adn을 클릭하면 xml이 안드로이드 amnifest뿐만 아니라 거기에 있는지 확인할 수 있습니다.

스타일을 변경해도 즉시 받아 들일 수 있다고 생각했는데 여러 번 저장해야했습니다.

+0

실제 레이아웃 파일이나 레이아웃의 모든보기에 테마가 설정되어 있지 않습니다. 매니페스트의 활동 수준에서만 주제를 설정했습니다. manifest와 layout xml 파일 모두 괜찮아 보입니다. 레이아웃 xml은 실제로 매우 단순합니다 (ImageView가있는 LinearLayout). 나는 프로젝트를 청소하고, Eclipse를 재시작하고, 재부팅했다. – BigFwoosh

+0

레이아웃 폴더 style = "@ style/BlueStyle"에서 실제 레이아웃 요소를 추가하려고 시도했습니다. –

+0

시도했지만 아무 효과가 없습니다. – BigFwoosh

관련 문제