美文网首页
React Native 密码输入的显示与隐藏 Image点击事

React Native 密码输入的显示与隐藏 Image点击事

作者: _悟_空 | 来源:发表于2019-10-04 11:28 被阅读0次

    1.效果图

    imag_eye.gif

    2.添加依赖

    import {
      View,
      Text,
      TouchableWithoutFeedback,
      TextInput,
      Image,
      StyleSheet,
    } from 'react-native';
    

    3.代码功能实现

    export default class App extends Component {
    
      constructor(props) {
        super(props);
        this.state = {
          imageState: false,
        };
      }
    
      render() {
        return (
          <View style={{ flex: 1, justifyContent: 'space-around' }}>
    
            <View
              style={{ backgroundColor: '#ffffff', height: 50, flexDirection: 'row', justifyContent: 'space-between', marginTop: 1, }}>
              <Text style={pageStyle.textStyle}>请输入密码:</Text>
              <TextInput
                secureTextEntry={!this.state.imageState}//是否隐藏
                editable={true}//是否可编辑
                style={pageStyle.textInfoStyle}>
                test12345test
              </TextInput>
              <TouchableWithoutFeedback style={{ marginRight: 10 }} onPress={this.onPressChang}>
                {this.state.imageState ? (
                  <Image style={{ width: 21, height: 14, alignSelf: 'center', marginRight: 10, }}
                    source={require('../ReactDemo1/android/app/src/main/res/mipmap-xhdpi/password_show.png')}
                  />) : (<Image style={{ width: 20, height: 8, alignSelf: 'center', marginRight: 10, }}
                    source={require('../ReactDemo1/android/app/src/main/res/mipmap-xhdpi/password_hide.png')}
                  />)}
              </TouchableWithoutFeedback>
            </View>
    
          </View>
        );
      }
    
      onPressChang = () => {
        this.setState({
          imageState: !this.state.imageState,
        });
      };
    }
    
    const pageStyle = StyleSheet.create({
      textInfoStyle: {
        alignSelf: 'center',
        marginLeft: 40,
        color: '#343434',
        fontSize: 16,
        flex: 1,
      },
      textStyle: {
        alignSelf: 'center',
        marginLeft: 10,
        color: '#343434',
        fontSize: 16,
      },
    });
    
    

    相关文章

      网友评论

          本文标题:React Native 密码输入的显示与隐藏 Image点击事

          本文链接:https://www.haomeiwen.com/subject/oieructx.html