Какой цвет по умолчанию для текста в textview? - PullRequest
63 голосов
/ 24 июня 2011

Я установил красный цвет, и после этого я хочу снова установить цвет по умолчанию, но я не знаю, что такое цвет по умолчанию, кто-нибудь знает?

Ответы [ 10 ]

73 голосов
/ 24 июня 2011

Вы можете сохранить старый цвет, а затем использовать его для восстановления первоначального значения. Вот пример:

ColorStateList oldColors =  textView.getTextColors(); //save original colors
textView.setTextColor(Color.RED);
....
textView.setTextColor(oldColors);//restore original colors

Но в целом по умолчанию TextView цвет текста определяется текущей темой, примененной к вашему Activity.

73 голосов
/ 16 октября 2015

На самом деле цвет TextView:

android:textColor="@android:color/tab_indicator_text"

или

#808080
35 голосов
/ 03 мая 2012

Есть некоторые цвета по умолчанию, определенные в android.R.color

int c = getResources().getColor(android.R.color.primary_text_dark);
13 голосов
/ 20 ноября 2012

Получить эти значения из атрибутов:

int[] attrs = new int[] { android.R.attr.textColorSecondary };
TypedArray a = getTheme().obtainStyledAttributes(R.style.AppTheme, attrs);
DEFAULT_TEXT_COLOR = a.getColor(0, Color.RED);
a.recycle();
5 голосов
/ 13 февраля 2015

В теме есть настройки по умолчанию, которые использует Android, если вы не укажете цвет текста.Это могут быть разные цвета в различных интерфейсах Android (например, HTC Sense, Samsung TouchWiz и т. Д.).В Android есть тема _dark и _light, поэтому значения по умолчанию для них разные (но почти черные у них обоих в ванильном андроиде).Однако рекомендуется определить свой основной цвет текста самостоятельно, чтобы обеспечить согласованный стиль для всех устройств.

В коде:

getResources().getColor(android.R.color.primary_text_dark);
getResources().getColor(android.R.color.primary_text_light);

В xml:

android:color="@android:color/primary_text_dark"
android:color="@android:color/primary_text_light"

В качестве справки в vanilla Android темный цвет текста темы - #060001, а в светлой теме - #060003 со времени API v1. См. Класс стиля Android здесь

2 голосов
/ 06 октября 2018

Я знаю, что он старый, но в соответствии с моим собственным редактором тем с темой по умолчанию, по умолчанию

textPrimaryColor = #000000

и

textColorPrimaryDark = #757575
1 голос
/ 24 июня 2011

Я полагаю, что целочисленное значение цвета по умолчанию - 16711935 (0x00FF00FF).

0 голосов
/ 21 апреля 2019

Я обнаружил, что android:textColor="@android:color/secondary_text_dark" обеспечивает более близкий результат к цвету TextView по умолчанию, чем android:textColor="@android:color/tab_indicator_text".Я полагаю, вам нужно переключаться между параметром second_text_dark / light в зависимости от используемой вами темы

0 голосов
/ 31 января 2019

эй, ты можешь попробовать это

ColorStateList colorStateList = textView.getTextColors();
String hexColor = String.format("#%06X", (0xFFFFFF & colorStateList.getDefaultColor()));
0 голосов
/ 24 июня 2011

Нет цвета по умолчанию.Это означает, что каждое устройство может иметь свое собственное.

...