2012-12-13 3 views
2

나는 Android에서 메시지를 표시하기 위해 만드는 대화 상자가 있습니다. 내가 스타일을 텍스트 뷰에 스타일이 응용 프로그램 테마 설정이대화 상자의 TextView 스타일은 froyo의 텍스트를 볼 수 없지만 ics로 볼 수 있습니다.

처럼이

<style name="DialogTextSmall"> 
    <item name="android:textSize">@dimen/text_size_small</item>   
</style> 

과 같은 적용했습니다 당신이 볼 수 있듯이 그것은 기본적으로이

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 



     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:id="@+id/about_msg" 
      android:text="@string/about_msg" 
      android:autoLink="web" 
      android:padding="10dip" 
      style="@style/DialogTextSmall" /> 

</ScrollView> 

같이있는 ScrollView에서 텍스트보기를 포함

<style name="AppTheme" parent="android:Theme.Light">  

문제점 : 그것은 흰색 B에 미세 검정 텍스트를 도시 API-15 ICS에서

TextView의 ackground.

문제는 내가 프로 요에서 대화 상자를 표시이 차지하는 공간을 갖고있는 것 같아요하지만 그 텍스트도 표시 할 것 does'nt 때입니다 - 내 생각 엔 텍스트의 색 배경과 동일 (회색 검은 색)

나는 까만 배경 및 백색 원본을 열심히 코딩해서 빨리 고칠 수 있는다 것을 나는 있있다, 그러나 TextView의 초록색 및 배경을 위해 단단한 표를하기 위하여 나에게 그 (것)들을 붙들기없이, 나타 내기 위하여 플랫폼의 기본 색깔을있는 것이 가능하지 않는가?

답변

1

Textview 스타일의 상속이 실제로 도움이되지 않았습니다. 그것은 약간의 기발한 문제이며 여기에 내가 기본 안드로이드 테마에서 상속

이 테마를 해결 내가 그것을했던 또 다른 방법에게 내 경우에는 그것을

http://blog.andromo.com/2011/fixing-text-colours-on-an-alertdialog-when-using-theme-light/

을 수행하는 하나의 방법입니다

<style name="Theme" parent="android:Theme"></style> 
<style name="Theme.AppTheme" parent="@android:style/Theme.Light"/> 

<style name="DialogTextSmall"> 
    <item name="android:textSize">@dimen/text_size_small</item> 
    <item name="android:textColor">@android:color/white</item>    
</style> 

이 방법에 대한 모든 플랫폼, froyo, 진저 브레드 이상, 대화 상자는 검은 색이고 텍스트는 흰색입니다

2

부모 스타일을 상속 한 다음 변경할 값만 변경할 수 있습니다. 이에 XML을 변경해보십시오 :

<style name="DialogTextSmall" parent="@android:style/Widget.TextView> 
    <item name="android:textSize">@dimen/text_size_small</item>   
</style> 

당신이 상속 할 수있는 스타일의 목록은 Github에서 here에 AOSP 소스에서 찾을 수 있습니다.

EIDT : 기본적 텍스트 조회수

검정 텍스트 및 투명 배경을 가지고, 그래서 당신은 (다시, 투명) 텍스트보기 뒤의 배경이 검은 경우 둘 중 하나를 설정해야합니다.

+0

@ color/foreground1을 추가하지 않으면 제대로 작동하지 않습니다. 동일한 텍스트가 보이지 않는 경우 (뒤로 및 전경이 동일하게 보임) – Ahmed

+0

기본적으로 텍스트보기는 검은 색 텍스트와 투명한 배경을 갖기 때문에 텍스트 배경 (배경이 투명한 배경) 뒤에 배경이있는 경우 둘 중 하나를 설정해야합니다. 검은 색입니다. –

+0

@ android : color/white 이제 froyo에서 멋진 흰색 텍스트 검은 색 대화 상자가 표시되지만 ICS에서는 표시되지 않습니다. 흰색 위에 흰색 대화?더 중요한 사실은 애플리케이션 테마 세트가