programing

모든 텍스트에 대해 Android 앱에서 텍스트 색상을 설정하는 방법은 무엇입니까?

projobs 2021. 1. 18. 07:29
반응형

모든 텍스트에 대해 Android 앱에서 텍스트 색상을 설정하는 방법은 무엇입니까?


내 Android 앱의 기본 텍스트 색상을 정의하고 싶습니다.

모든 활동이 확장되는 기본 활동 클래스가 있으며 이것이 색상을 정의하기에 좋은 곳이라고 생각했습니다.

더 나은 솔루션이 아니라면? 스타일일까요?

문제는이 모든 것이 저에게 새로운 것이므로 언제든지 저에게 조언하고 코드 스 니펫과 설명을 제공하십시오.

이것이 내 기본 클래스의 모습입니다. 보시다시피 꽤 비어 있습니다

package com.ccslocal.mobile.quiz.jls;

import android.app.Activity;
import android.os.Bundle;

public class BaseActivity extends Activity {
    //set up app preferences here
}

예, 맞습니다. 스타일을 사용하여 만들 수 있습니다. 또는 기본 텍스트 색상을 설정 하기 위해 TextView.getTextColors (). getDefaultColor ()사용할 수 있습니다 . 사실 나는 이것을 사용한 적이 없지만 도움이 될 것이라고 생각합니다.

스타일

<style name="TextColor">
    <item name="android:textColor">#00FF00</item>
</style>      

그런 다음 레이아웃 파일에서

<TextView  style="@style/TextColor" />

denis.solonenko의 답변에서 언급했듯이 올바른 접근 방식은 테마를 수정하는 것입니다.

테마 (themes.xml 또는 styles.xml 파일)를 정의하는 위치에 다음과 같이 추가 할 수 있습니다.

<style name="AppTheme" parent="@style/Theme.AppCompat.Light">
    ...
    <item name="android:textColor">#FF00FF</item>
    ...
</style>

그런 다음 테마가 매니페스트의 활동 또는 애플리케이션에 적용되었는지 확인합니다.

<application
    ...
    android:theme="@style/AppTheme"
    .... 
    >

다음을 정의 할 수도 있습니다.

  • textColor-주어진보기의 기본 텍스트 색상
  • textColorPrimary-활성화 된 버튼 및 대형 텍스트보기의 기본 텍스트 색상
  • textColorSecondary-중간 및 작은 Textview의 기본 텍스트 색상
  • textColorTertiary-?

(소스 TextColor 대 TextColorPrimary 대 TextColorSecondary )

다른 리소스 폴더에 적용된 스타일 또는 정의와 같이 미리 정의 된 색상을 재정의 할 수있는 다른 요소가 많이 있습니다.

테마 항목의 전체 목록은 여기를 참조하십시오. https://android.googlesource.com/platform/frameworks/base/+/refs/heads/master/core/res/res/values/themes.xml


앱에 대한 사용자 지정 테마를 만듭니다. 공식 가이드를 보세요 .


res/values/colors.xml이처럼 기본 색상을 설정하십시오.

<color name="defaultTextColor">#ffffff</color>

그래서이 색은 모든 텍스트에

android:textColor="@color/defaultTextColor"

또는

textView.setTextColor(R.color.defaultTextColor);

  • TextView에 대한 스타일 만들기 :

    <style name="TextViewTheme">
        <item name="android:textColor">@android:color/white</item>
    </style>
    
  • 앱에 스타일 적용 :

    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="android:textViewStyle">@style/TextViewTheme</item>
    </style>
    
  • AndroidManifest.xml에서 스타일을 변경하는 것을 잊지 마십시오.

    <application
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        ...
    </application>
    

참조 URL : https://stackoverflow.com/questions/6921640/how-to-set-text-color-in-android-app-for-all-text

반응형