美文网首页Flutter
[译]TextField/TextFormField 如何显示/

[译]TextField/TextFormField 如何显示/

作者: Pandorox | 来源:发表于2021-12-31 22:39 被阅读0次

原文:Flutter: Show/Hide Password in TextField/TextFormField

TextField/TextFormField 里隐藏输入的密码,只需要设置属性 obscureTexttrue

TextField(
   obscureText: true,
   /* ... */
),
效果如图:

显示输入的密码以便用户可以看到实际输入的内容,设置属性obscureTextfalse

TextField(
   obscureText: false,
   /* ... */
),
效果如图:

完整示例

App 预览

我们制作了一个简单的Flutter应用,在屏幕中心包含 TextField widget(你也可以使用TextFormField)。用户可以输入密码,并且可以通过widget右边的“眼型”图标按钮控制密码的显示和隐藏。

完整代码

// main.dart
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      // Remove the debug banner
      debugShowCheckedModeBanner: false,
      title: 'Kindacode.com',
      home: HomePage(),
    );
  }
}

class HomePage extends StatefulWidget {
  @override
  _HomePageState createState() => _HomePageState();
}

class _HomePageState extends State<HomePage> {
  bool _isObscure = true;
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Kindacode.com'),
      ),
      body: Padding(
        padding: const EdgeInsets.all(25),
        child: Center(
          child: TextField(
            obscureText: _isObscure,
            decoration: InputDecoration(
                labelText: 'Password',
                suffixIcon: IconButton(
                    icon: Icon(
                        _isObscure ? Icons.visibility : Icons.visibility_off),
                    onPressed: () {
                      setState(() {
                        _isObscure = !_isObscure;
                      });
                    })),
          ),
        ),
      ),
    );
  }
}

相关文章

网友评论

    本文标题:[译]TextField/TextFormField 如何显示/

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