2015-09-24 3 views

ответ

21

С точки зрения React Собственная версия 0.21, по-прежнему нет способа стилизовать курсор цвет через реквизит зрения. Я успешно разработал цвет курсора, добавив собственный стиль в тему приложения.

Вы хотите поместить этот код в файл styles.xml, который находится в папке android вашего проекта React, по адресу android/app/src/main/res/values/styles.xml.

<resources> 
    <style name="AppTheme" parent="Theme.AppCompat.Light"> 
     <!-- typical material style colors --> 
     <item name="colorPrimary">@color/kio_turquoise</item> 
     <item name="colorPrimaryDark">@color/kio_hot_pink</item> 

     <!-- sets cursor color --> 
     <item name="colorControlActivated">@android:color/black</item> 
    </style> 
</resources> 

Обратите внимание, что этот стиль является глобальным, и устанавливает цвет курсора для всех Android TextInput просмотров в вашем React родного приложения.

+2

Отличное решение, ты спас меня! спасибо :) – BigPun86

+0

Спасибо, это здорово слышать! :) –

+0

Это не работает для меня, потому что курсор глобально одного цвета: / –

2

Для цвета подчеркивания вы можете использовать underlineColorAndroid свойство: https://github.com/facebook/react-native/blob/master/Libraries/Components/TextInput/TextInput.js#L290

Смотрите пример: https://github.com/facebook/react-native/blob/master/Examples/UIExplorer/TextInputExample.android.js#L222

Для курсора цвета нет такого имущества подвергается в данный момент. Вы всегда можете использовать пользовательскую тему для Android для своего приложения, если хотите изменить это для всех текстовых просмотров в своем приложении (читайте здесь: http://developer.android.com/guide/topics/ui/themes.html)

+0

Изменения в свойствах underlineColorAndroid при выборе. Я предполагаю, что единственным доступным решением является тема на данный момент –

+0

У вас был какой-то успех, определяющий пользовательские темы, чтобы изменить цвет курсора на 'Android'? Я стараюсь не повезло. Если вы могли бы поделиться своим «main.xml» или везде, где вы определяете тему? –

3

Помимо реализации решения @Kio Krofovitch Я также сделал файл color.xml в папке же ../res/values, в котором я написал что-то вроде:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <color name="orange">#ff5500</color> 
    <color name="articlecolor">#3399FF</color> 
    <color name="article_title">#3399FF</color> 
    <color name="cachecolor">#8ad0e8</color> 
</resources> 

, а затем, соответственно, редактировал styles.xml, как следующим образом:

  ... 
     <item name="colorControlActivated">@color/orange</item> 
    </style> 
</resources> 
0

Существует на самом деле опора делает это для TextInput:

  • selectionColor (для изменения курсор цвет, а также цвет выбора)
  • underlineColorAndroid (изменить цвет подчеркивания TextInput в Android)

    <TextInput 
        underlineColorAndroid="#FF0000" 
        selectionColor="rgba(0,0,0,0.4)" 
    /> 
    

Здесь documentation.