2015-10-13 19 views
6

Sto utilizzando React Native per sviluppare app. Il fatto è che voglio cambiare il colore del cursore dell'input di testo usando invece il colore blu predefinito. C'è qualche possibilità che posso fare questo in JavaScript o in AppDelegate per impostare il colore della tinta globale?Cambia React Cursore nativo colore

+0

che cosa si intende per colore del cursore? il colore del momento saliente su un input? il colore del cursore del mouse quando si passa sopra un input? il colore del punto di inserimento del testo in cui digiti le lettere? –

risposta

5

Sì, possiamo farlo impostando il colore della tinta.

Nel AppDelegate.m del progetto.

Aggiungendo il codice seguente tra self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; e [self.window makeKeyAndVisible];, è possibile modificare il colore della tinta globale.

self.window.tintColor = [UIColor redColor]; // Here is your color. 

Oppure, aggiungendo il codice qui sotto dopo [self.window makeKeyAndVisible];, è possibile cambiare il colore della tinta TextInput/UITextField.

[[UITextField appearance] setTintColor:[UIColor redColor]]; 

Non succede nulla quando si modifica il colore della tinta di UITextView.

E non sono riuscito a trovare un modo per implementarlo con uno stile di JaveScript.

+0

Funziona! Grazie! –

+1

Nel caso in cui qualcuno volesse aggiungere un colore esadecimale, è possibile utilizzare [questo sito] (http://uicolor.io/#/hex-to-ui) per convertire da hex a iOS UIColor. – eyal83

+0

Qualcuno ha capito come farlo su Android? – yura

16

V'è in realtà un puntello a fare questo per TextInput: selectionColor

<TextInput 
    selectionColor={'green'} 
/> 

Ecco il documentation.

2

modo migliore per ottenere questo, se si desidera che la consistenza trogolo l'applicazione sta mettendo il codice qui sotto nel file di root (index.js)

import { TextInput } from 'react-native' 
TextInput.defaultProps.selectionColor = 'white' 

/*class....*/