2016-06-28 4 views
9

मैं <TextInput> एक लेटरस्पेसिंग शैली देने की कोशिश कर रहा हूं लेकिन ऐसा लगता है कि यह केवल <Text> के लिए काम करता है। TextInput में वर्णों के बीच की जगह बढ़ाने के लिए प्रतिक्रिया मूल में कोई तरीका है?क्या प्रतिक्रिया मूल में TextInput के लिए letterSpacing करने का कोई तरीका है?

यह वर्ण

<Text style={{'letterSpacing': 5}}>Some Text</Text> 

के बीच की जगह इस

<TextInput style={{'letterSpacing': 5}} /> 
+0

आपके द्वारा किए गए कुछ कोड को दिखाने के लिए जोड़ें। –

+0

नहीं, मुझे विश्वास नहीं है कि एक चरित्र पैडिंग प्रकार विशेषता है; हालांकि, आप 'ऑन चेंजटेक्स्ट' कहलाए जाने के लिए एक छोटा सा फ़ंक्शन लिख सकते हैं जो आवश्यक होने पर अतिरिक्त रिक्त स्थान जोड़ सकता है –

उत्तर

0

काम नहीं करेगा यह एक संभव समाधान है, शायद नहीं बेहतर है बढ़ जाती है।

Jsfiddle

class Form extends React.Component { 
    constructor() { 
    super(); 
    this.state = { 
     value: '', 
    }; 
    this.onChangeText = this.onChangeText.bind(this); 
    } 

    onChangeText(e) { 
    const val = e.target.value.replace(/ /g, '').split(''); 
    const spaced = val.join(' '); 
    this.setState({ 
     value: spaced, 
    }); 
    } 

    render() { 
    return(
     <div style={{flexDirection: 'column'}}> 
     <div>Type Text</div> 
     <input 
      type='text' 
      onChange={this.onChangeText} 
      value={this.state.value} 
     /> 
     </div> 
    ); 
    } 
} 
+3

उन्होंने कहा कि मूल प्रतिक्रिया दें और आपने वेब के लिए प्रतिक्रिया दी –

0

इस घटक https://github.com/wix/react-native-ui-lib#masked-input यह आप आप यह चाहते किसी भी तरह से कस्टम नकाबपोश इनपुट रेंडर करने के लिए अनुमति देता है चेक बाहर, इनपुट के वास्तविक मूल्य को प्रभावित किए बिना।

संबंधित मुद्दे

 संबंधित मुद्दे