TextView setTextColor () nie działa
Programowo tworzę listę (bez ListView, tylko dodaję je do rodzica) takich elementów:
<LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content"
android:orientation="vertical" android:layout_weight="1">
<TextView android:id="@+id/filiale_name"
android:layout_width="fill_parent" android:layout_height="wrap_content"/>
<TextView android:id="@+id/lagerstand_text"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:textSize="10sp" android:textColor="@color/red"/>
</LinearLayout>
Zdefiniowałem również niektóre kolory w values / colors.xml. Jak widzisz, TextView o id "lagerstand_text" domyślnie ustawił kolor na czerwony. To działa.
Podczas tworzenia elementów w Javie wykonuję
lagerstandText.setText("bla");
I dla niektórych elementów również robię
lagerstandText.setTextColor(R.color.red);
I inne kolory. Podczas gdy elementy, na których nie wywołuję setTextColor () są czerwone, wszystkie inne są szare, bez względu na kolor, który wybrałem(nawet jeśli to znowu ten sam czerwony).
Dlaczego?5 answers
Dokumentacja nie jest zbyt gadatliwa na ten temat, ale nie można używać tylko liczby całkowitej R. color podczas wywoływania setTextColor
. Aby poprawnie ustawić kolor, musisz wywołać getResources().getColor(R.color.YOURCOLOR)
.
Użyj poniższego, aby programowo ustawić kolor tekstu:
textView.setTextColor(getResources().getColor(R.color.YOURCOLOR));
Zaczynając od biblioteki wsparcia 23 musisz użyć następującego kodu, ponieważ getColor jest przestarzały:
textView.setTextColor(ContextCompat.getColor(context, R.color.YOURCOLOR));
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-30 11:50:28
Istnieje więc wiele sposobów na osiągnięcie tego zadania.
1.
int color = Integer.parseInt("bdbdbd", 16)+0xFF000000);
textview.setTextColor(color);
2.
textView.setTextColor(getResources().getColor(R.color.some_color));
3.
textView.setTextColor(0xffbdbdbd);
4.
textView.setTextColor(Color.parseColor("#bdbdbd"));
5.
textView.setTextColor(Color.argb(a_int, r_int, g_int, b_int));
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-19 14:55:12
W przyszłości możesz użyć następującej opcji:
String color = getString(Integer.parseInt(String.valueOf(R.color.my_color)));
my_textView.setTextColor(Color.parseColor(color));
W ten sposób możesz wykorzystać swoje zasoby kolorów.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-09-29 16:00:39
1.standardowy kolor preferujesz, przejdź poniżej .
textview.setTextColor(Color.select_color)
2.tutaj chcesz użyć koloru custwom dodaj go w Kolorze.plik xml
textview.setTextColor(getResources().getColor(R.color.textbody));
Lub
textView.setTextColor(Color.parseColor("#000000"));
Lub
subText.setTextColor(Color.rgb(255,192,0));
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-08-19 16:46:38
Integer id dla określonego koloru(zdefiniowanego w układzie xml) zdefiniowanego w klasie R
nie może być przekazany jako parametr do metody setTextColor()
klasy View
.
Musisz uzyskać parametr setTextColor()
w następującej linijce kodu:
int para=getResources().getColor(R.color.your_color,null);
view.setTextColor(para,null);
Metoda getColor(int id)
została zamortyzowana...zamiast tego użyj getColor(int id,Resources.Theme theme)
jak w linii kodu powyżej.
The `second parameter( theme )` can be null
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-04-05 09:52:02