Ändern Sie die Farbe des hervorgehobenen Textes in Android

9

Ich bin mir nicht sicher, ob das möglich ist, vielleicht kann mich jemand zurechtweisen. Ich habe eine EditText-Ansicht in einer Android-Anwendung, die weißen Text auf blauem Hintergrund hat. Wenn der Text ausgewählt ist (über einen langen Druck und den Bearbeitungsdialog), möchte ich, dass die Hervorhebung weiß ist und die Textfarbe in Schwarz geändert wird. Ärgerlich scheint es jedoch keine Möglichkeit zu geben, die Textfarbe auf Highlight zu setzen. Sie können die Hervorhebungsfarbe mit textColorHighlight festlegen, jedoch nicht mit der Textfarbe. Wenn Sie also eine weiße Hervorhebung mit weißem Text festlegen, wird ein großer weißer Block angezeigt.

Es scheint so, als ob es etwas Triviales sein sollte, das du deklarativ in der XML-Datei machen kannst, aber obwohl ich viele Kombinationen von Stilen und Farben ausprobiert habe, war ich nicht in der Lage, die Farbe zu ändern.

Bei der Überprüfung anderer Standardanwendungen scheint sich die Textfarbe nie zu ändern, daher denke ich, dass dies nicht einfach ist. Ich möchte den EditText, wenn überhaupt möglich, nicht einfach zu etwas so Einfachem ableiten. Fehle ich etwas? Kann dies in der Ansicht xml gemacht werden?

    
sgargan 10.08.2010, 16:48
quelle

5 Antworten

1

Haben Sie @android: attr / textColorPrimaryInverse versucht?

    
fedj 10.08.2010 19:08
quelle
1

Wie in diesem SO-Post erwähnt, sollten Sie einen Selektor verwenden, um den Text zu ändern Farben wie folgt:

%Vor%

Setzen Sie Ihre Eigenschaft textColor auf @ drawable / selector_name

    
Chase 13.09.2011 14:49
quelle
1

Versuchen Sie: <item name="android:textColorHighlight">your_color</item>

in dem Stil, den Sie als Ihr Thema haben. Zum Beispiel

%Vor%

Verwenden Sie dann diesen Stil als Thema für Ihre Aktivität in der Manifestdatei. Zum Beispiel-

%Vor%     
Shubham Arora 16.04.2016 20:42
quelle
0

Versuchen Sie es mit textColorHighlight - "Farbe des markierten Texts". Ссылка

    
bushek 21.11.2013 12:28
quelle
0
%Vor%

Überschreiben Sie die Methode onSelectionChanged von TextView , hol den Text und setze einen ForegroundColorSpan

    
Will Li 05.01.2016 03:36
quelle

Tags und Links