パスワード入力に対してreactnativeでTextInputをどのようにスタイル設定しますか


102

TextInputがあります。入力した実際のテキストを表示する代わりに、ユーザーがテキストを入力したときにアスタリスク(****)を表示したいと思います。これどうやってするの?

<TextInput
  style={{ height: 40, borderColor: 'gray', borderWidth: 1 }}
  onChangeText={(text) => this.setState({input: text})}
/>

回答:


319

これを尋ねられたとき、ネイティブにそれを行う方法はありませんでしたが、これはこのプルリクエストに従って次の同期で追加されます。プルリクエストの最後のコメントは次のとおりです-「内部に着陸し、次の同期で出力されます」

それが追加されると、あなたはこのようなことをすることができるでしょう

<TextInput secureTextEntry={true} style={styles.default} value="abc" />

refs


おかげで、それがマージされるまで、他にどのようなオプションがありますか?Facebookは自分のアプリへのログインに対して同様のことをしていると思います。
bwbrowning 2015年

1
私は今日それを調べていました、それは私がそのプルリクエストを見つけた方法です。彼らは、100%ReactNativeであるアプリを2つしか持っていないと言います。F8アプリは、認証を求める新しいウィンドウを開きます。Facebook Adsには私たちが探している機能がありますが、Objective-Cをラップしていると思います。別の方法は、文字列を保存し、入力が更新されるたびに最後の文字を...のものに置き換えることです:)。
ライリーブラッケン2015年

@bwbrowning、すぐにマージする必要があります。あなたが展開するずっと前に私は賭けます。
ブリガンド2015年

テキストが含まれているので、そこからコピーして貼り付けることができるので、これが好きです。XD
Jovylle Bermudez

25

2018年5月 react-nativeバージョン0.55.2

secureTextEntry = {true}は機能します

password = {true}が機能しない


11

以下の行をに追加するだけです <TextInput>

secureTextEntry={true}

6

追加する必要がありました:

secureTextEntry={true}

に加えて

password={true}

0.55現在


2
password = {true}は必要ありません
KetZoomer

6

追加

secureTextEntry={true}

あるいは単に

secureTextEntry 

TextInputのプロパティ。

実例:

<TextInput style={styles.input}
           placeholder="Password"
           placeholderTextColor="#9a73ef"
           returnKeyType='go'
           secureTextEntry
           autoCorrect={false}
/>

4

TextInputにはsecureTextEntry = {true}を含める必要があります。Reactのドキュメントには、multiline = {true}の組み合わせはサポートされていないため、同時に使用してはならないことが記載されていることに注意してください。

textContentType = {'password'}を設定して、フィールドがモバイルに保存されているキーチェーンから資格情報を取得できるようにすることもできます。これは、モバイルで生体認証入力を取得して資格情報をすばやく挿入した場合に資格情報を入力する別の方法です。iPhone XのFaceIdや、他のiPhoneモデルやAndroidの指紋タッチ入力など。

 <TextInput value={this.state.password} textContentType={'password'} multiline={false} secureTextEntry={true} onChangeText={(text) => { this._savePassword(text); this.setState({ password: text }); }} style={styles.input} placeholder='Github password' />

3

少しプラス:

version = RN 0.57.7

secureTextEntry={true}

keyboardTypeだったときは動作しません"phone-pad"または"email-address"


2

次のように、公式サイトでサンプルコードとサンプルコードを入手できます。

<TextInput password={true} style={styles.default} value="abc" />

参照:http//facebook.github.io/react-native/docs/textinput.html


2
はい、これも見ました。しかし、私にとっては、でのみ機能しsecureTextEntry={true} ます。
namxam 2015年

最新のstable(0.8.0)にアップグレードするだけで、機能しますpassword={true}
Daniel Pecher 2015

0

私は0.56RCsecureTextEntry = {true}とpassword = {true}を使用していますが、@ NicholasByDesignで言及されているように機能するだけです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.