web-dev-qa-db-de.com

so ändern Sie die Markierungsfarbe im editText-Feld

Unten ist ein Screenshot eines benutzerdefinierten Textfelds, das ich in meiner Android-App habe. Während Sie ein gegebenes Wort eingeben, wird der Text für das gerade eingegebene Wort grau hervorgehoben und der Text wird schwarz angezeigt, bis Sie die Leertaste drücken. Zu diesem Zeitpunkt wird der Text wie erwartet weiß. Gibt es eine Möglichkeit, die Farbe der Hervorhebung und den hervorgehobenen Text zu ändern?

enter image description here

meine Text-XML-Bearbeitung sieht folgendermaßen aus

 <EditText
                    Android:id="@+id/searchField"
                    Android:layout_width="160dp"
                    Android:layout_height="44dp"
                    Android:layout_alignParentLeft="true"
                    Android:layout_centerVertical="true"
                    Android:layout_marginLeft="60dp"
                    Android:background="@null"
                    Android:cursorVisible="true"
                    Android:ems="10"
                    Android:textColor="@color/white"
                    Android:textColorHighlight ="#ff0000"
                    Android:textCursorDrawable="@null" >
                </EditText>

das gesamte Layout

<Android.support.v4.widget.DrawerLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:map="http://schemas.Android.com/apk/res-auto"
    Android:id="@+id/drawer_layout"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent" >

    <!--
         As the main content view, the view below consumes the entire
         space available using match_parent in both dimensions.
    -->

    <RelativeLayout
        Android:id="@+id/content_frame"
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        Android:background="#fff" >



        <fragment
            Android:id="@+id/map"
            Android:name="com.sapientnitro.inhouse.drop.components.DRPCustomMapFragment"
            Android:layout_width="match_parent"
            Android:layout_height="match_parent" />



        <ImageButton
            Android:id="@+id/btn_center_local"
            Android:layout_width="44dp"
            Android:layout_height="44dp"
            Android:layout_alignParentBottom="true"
            Android:layout_alignParentRight="true"
            Android:layout_marginBottom="50dp"
            Android:layout_marginRight="15dp"
            Android:background="@drawable/btn_center_on_local_up" />

        <RelativeLayout
            Android:id="@+id/top_bar"
            Android:layout_width="match_parent"
            Android:layout_height="70dp"
            Android:background="#ddffffff" >

            <ImageButton
                Android:id="@+id/btn_menu"
                Android:layout_width="40dp"
                Android:layout_height="40dp"
                Android:layout_alignParentBottom="true"
                Android:layout_marginBottom="10dp"
                Android:layout_marginRight="12dp"
                Android:layout_toLeftOf="@+id/btn_search"
                Android:background="@drawable/btn_menu_up" />


            <ImageButton
                Android:id="@+id/btn_create"
                Android:layout_width="40dp"
                Android:layout_height="40dp"
                Android:layout_alignParentBottom="true"
                Android:layout_marginBottom="10dp"
                Android:layout_marginLeft="12dp"
                Android:layout_toRightOf="@+id/btn_search"
                Android:background="@drawable/btn_create_up" />

            <ImageButton
                Android:id="@+id/btn_search"
                Android:layout_width="40dp"
                Android:layout_height="40dp"
                Android:layout_alignParentBottom="true"
                Android:layout_centerHorizontal="true"
                Android:layout_marginBottom="10dp"
                Android:background="@drawable/btn_search_up" />
        </RelativeLayout>

        <LinearLayout
            Android:id="@+id/search"
            Android:layout_width="fill_parent"
            Android:layout_height="fill_parent"
            Android:background="#ddffffff"
            Android:orientation="vertical" >

            <RelativeLayout
                Android:id="@+id/search_bar"
                Android:layout_width="match_parent"
                Android:layout_height="70dp"
                Android:background="#dd00cccb" >

                <ImageView
                    Android:id="@+id/searchBox"
                    Android:layout_width="238dp"
                    Android:layout_height="44dp"
                    Android:layout_alignParentLeft="true"
                    Android:layout_centerVertical="true"
                    Android:layout_marginLeft="20dp"
                    Android:src="@drawable/search_field" />

                <ImageView
                    Android:id="@+id/clear"
                    Android:layout_width="25dp"
                    Android:layout_height="25dp"
                    Android:layout_alignParentLeft="true"
                    Android:layout_centerVertical="true"
                    Android:layout_marginLeft="220dp"
                    Android:src="@drawable/btn_clear_field" />

                <EditText
                    Android:id="@+id/searchField"
                    Android:layout_width="160dp"
                    Android:layout_height="44dp"
                    Android:layout_alignParentLeft="true"
                    Android:layout_centerVertical="true"
                    Android:layout_marginLeft="60dp"
                    Android:background="@null"
                    Android:cursorVisible="true"
                    Android:ems="10"
                    Android:textColor="@color/white"
                    Android:textColorHighlight ="@color/white"
                    Android:textCursorDrawable="@null" >
                </EditText>

                <TextView
                    Android:id="@+id/cancelBTN"
                    Android:layout_width="wrap_content"
                    Android:layout_height="wrap_content"
                    Android:layout_alignParentRight="true"
                    Android:layout_centerVertical="true"
                    Android:layout_marginRight="16dp"
                    Android:textColor="@color/white"
                    Android:textSize="22dp"
                    Android:text="@string/cancel" />

            </RelativeLayout>

            <ScrollView
                Android:id="@+id/search_results_container"
                Android:layout_width="fill_parent"
                Android:layout_height="fill_parent"
                Android:layout_weight="1"
                Android:paddingTop="2dp"
                Android:scrollbars="none" >

                <LinearLayout
                    Android:id="@+id/search_results_content"
                    Android:layout_width="match_parent"
                    Android:layout_height="wrap_content"
                    Android:orientation="vertical" >

                    <RelativeLayout
                        Android:id="@+id/header_artists"
                        Android:layout_width="match_parent"
                        Android:layout_height="50dp"
                        Android:background="#dd00cccb" />

                    <HorizontalScrollView
                        Android:id="@+id/results_artists"
                        Android:layout_width="match_parent"
                        Android:layout_height="150dp" />

                    <RelativeLayout
                        Android:id="@+id/header_followers"
                        Android:layout_width="match_parent"
                        Android:layout_height="50dp"
                        Android:background="#dd00cccb" />

                    <HorizontalScrollView
                        Android:id="@+id/results_followers"
                        Android:layout_width="match_parent"
                        Android:layout_height="150dp" />

                    <RelativeLayout
                        Android:id="@+id/header_places"
                        Android:layout_width="match_parent"
                        Android:layout_height="50dp"
                        Android:background="#dd00cccb" />

                    <HorizontalScrollView
                        Android:id="@+id/results_places"
                        Android:layout_width="match_parent"
                        Android:layout_height="150dp" />
                </LinearLayout>
            </ScrollView>
        </LinearLayout>
    </RelativeLayout>


    <ListView
        Android:id="@+id/left_drawer"
        Android:layout_width="255dp"
        Android:layout_height="match_parent"
        Android:layout_gravity="start"
        Android:background="#dd00cccb"
        Android:choiceMode="singleChoice"
        Android:divider="@Android:color/transparent"
        Android:dividerHeight="0dp"
        Android:listSelector="@drawable/selector_transparent" />

    <ListView
        Android:id="@+id/right_drawer"
        Android:layout_width="255dp"
        Android:layout_height="match_parent"
        Android:layout_gravity="end"
        Android:background="#dd00cccb"
        Android:choiceMode="singleChoice"
        Android:divider="@Android:color/transparent"
        Android:dividerHeight="0dp"
        Android:listSelector="@drawable/selector_transparent" />

</Android.support.v4.widget.DrawerLayout>
16
erik

Ich konnte das Highlight meines Bearbeitungstextes ändern, indem ich diese Zeile zu meiner Datei themes.xml hinzufügte:

<item name="Android:textColorHighlight">@color/m_highlight_blue</item>
16
l-l

Einfach, verwenden Sie einfach die TextHightLight-Eigenschaft im XML-Modus.

Android:textColorHighlight="#ff0000"

[Bild hier beigefügt ist da für einen Kommentar unten]

und wenn ich das tue, sieht es so aus

enter image description here

8
Kirk

Und wenn Sie den Marker-Griff ändern müssen, sollten Sie ihn ändern 

<item name="colorAccent">@color/edittext_handle_selection</item>
<item name="Android:textColorHighlight">@color/edittext_selection</item>
4
Abhijeet

In Code:

et.setHighlightColor(ContextCompat.getColor(getContext(), R.color.highlight));
2
Cristan

Sie sollten Android:textColorHighlight im EditText-Element Ihrer Layout-XML-Datei verwenden

1
Dreagen

Beim Materialdesign wird die Standardaufstiegsfarbe im Stil angezeigt, sodass die gesamte Textauswahl und das andere Design dieser Farbe entsprechen. Sie können diese Aufstiegsfarbe folgendermaßen ändern: 

Gehen Sie zur style.xml und ändern Sie die folgende Farbe - 

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorAccent">@color/colorAccent</item> // Replace this color with your own choice
    </style>
1

sie sollten einen Selektor verwenden, um die Textfarben zu ändern.

<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:Android="http://schemas.Android.com/apk/res/Android">
<!-- Pressed State -->
<item Android:state_pressed="true"
    Android:color="#FF0000" />
<!-- Focused State -->
<item Android:state_focused="true"
    Android:color="#FF0000" />
<!-- Default State -->
<item Android:color="#FFFFFF" />

Setzen Sie dann Ihre textColor-Eigenschaft auf @ drawable/selector_name

0
rachit

verwenden Sie diesen Code, kann es Ihnen helfen

Android:textColorHighlight="your color code"
0
Pankaj Arora