7 ответов:
вы можете сохранить старый цвет, а затем использовать его для восстановления исходного значения. Вот пример:
ColorStateList oldColors = textView.getTextColors(); //save original colors textView.setTextColor(Color.RED); .... textView.setTextColor(oldColors);//restore original colors
но в целом по умолчанию
TextViewцвет текста определяется из текущей темы, примененной к вашемуActivity.
есть некоторые цвета по умолчанию, определенные в
android.R.colorint c = getResources().getColor(android.R.color.primary_text_dark);
получить эти значения из атрибутов:
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();
в теме, которую использует Android, есть значения по умолчанию, если вы не указываете цвет текста. Это могут быть разные цвета в различных Android UIs (например, HTC Sense, Samsung TouchWiz и т. д.). Android имеет
_darkи_lightтема, поэтому значения по умолчанию для них разные (но почти черные в обоих из них в vanilla android). Однако рекомендуется самостоятельно определять основной цвет текста, чтобы обеспечить согласованный стиль на всех устройствах.In код:
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"как ссылка в ванильном Андроиде темный цвет текста темы
#060001и в легкой теме это#060003начиная с API v1. смотрите класс стиля android здесь
Comments