すべてのデバイスで作業する必要があるAndroidのエディットテキストカーソルの色を変更したい
私はこのようなドローアブルを使用しなければなりませんでした:
mycursor.xml:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:Android="http://schemas.Android.com/apk/res/Android" Android:shape="rectangle" >
<size Android:width="1dp" />
<solid Android:color="@Android:color/holo_blue_light"/>
<!--make sure its a solid tag not stroke or it wont work -->
</shape>
私の編集テキストで、次のようにカーソルの描画可能な属性を設定します。
<EditText
Android:id="@+id/et_details"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:cursorVisible="true"
Android:textCursorDrawable="@drawable/mycursor"
/>
すべてのプラットフォームでそれを取得する方法は、そのようなものです。
1-レイアウトフォルダーでlayout.xmlを開きます。編集テキストを見つけて設定します
Android:cursorVisible="true"
これにより、OSバージョン11より低いデバイスのカーソルが設定されます
2-ドローアブルフォルダーにcursor_drawable.xmlを作成します
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:Android="http://schemas.Android.com/apk/res/Android" Android:shape="rectangle" >
<size Android:width="1dp" />
<stroke Android:color="@color/black"/>
</shape>
3-フォルダーレイアウト-v11を作成する
4-layout.xmlをlayout-v11にコピーします
5-エディットテキストを見つけ、Android:textCursorDrawable = "@ drawable/cursor_drawable"を設定します
これにより、すべてのデバイスとOSでカーソルが表示されます。
割当 Android:textCursorDrawable
属性を@null
そして設定Android:textColor
カーソルの色として。
Drawalble xmlを作成します:edtcolor_cursor
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:Android="http://schemas.Android.com/apk/res/Android" >
<size Android:width="1dp" />
<solid Android:color="#FFFFFF" />
</shape>
<EditText
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:cursorVisible="true"
Android:textCursorDrawable="@drawable/edtcolor_cursor"
/>