У меня есть интерактивный TextView, который я хочу, чтобы передать некоторые цвета. Но я не знаю, как это сделать. Ниже приведены соответствующие фрагменты кода из моих двух файлов, с которыми я работаю:
TextView title = new TextView(this);
title.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
title.setTextColor(R.color.textcolor);
title.setText(titleLine);
title.setTypeface(null, Typeface.BOLD);
title.setClickable(true);
title.setId(idLine);
title.setFocusable(true);
title.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
/* Irrelevant code */
}
});
И это мой файл textcolor.xml:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:color="#000000"/> <!-- pressed -->
<item android:state_focused="true"
android:color="#000000"/> <!-- focused -->
<item android:color="#000000"/> <!-- default -->
</selector>
Когда я использую textcolor файл, набрав title.setTextColor(R.color.textcolor);, цвет текста становится серым, независимо от того, нажимаю ли я его или нет. Что странно, поскольку я написал "# 000000" во всех цветовых полях.
Но если я удалю код setTextColor, получим textView светло-серый цвет, и когда я его нажму, он станет черным. Но это не те цвета, которые я хочу.
Итак, может ли кто-нибудь помочь мне с этой проблемой?
Просто пояснить: я хочу, чтобы можно было указать цвета для текста, когда он нормальный, нажатый и сфокусированный.