Flutter-UI-TextField

Flutter UI布局TextField 使用, 简单一个登录页面

代码如下:



class MyApp extends StatelessWidget {
  // This widget is the root of your application.


  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: SHTPage(),
    );
  }
}

  class SHTPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
  return Scaffold(
    appBar: AppBar(
      title: Text("steve Widget"),
    ),
    body: SHTContent(),
    floatingActionButton: FloatingActionButton(
      child: Icon(Icons.add),
      onPressed:() =>print("FloatingActionButton click"),
    ) ,
    floatingActionButtonLocation:FloatingActionButtonLocation.endFloat ,
  );
  }
  }

  class SHTContent extends StatefulWidget {
    @override
    _SHTContentState createState() => _SHTContentState();
  }

  class _SHTContentState extends State<SHTContent> {


    final usetNameTextEditController = TextEditingController();
    final passWordTextEditController = TextEditingController();

    @override
    Widget build(BuildContext context) {

      return Padding(
        padding: const EdgeInsets.all(8.0),
        child: Column(
          children: <Widget>[
            TextField(
              controller: usetNameTextEditController,
              decoration:InputDecoration(
                labelText: "user name",
                icon: Icon(Icons.people),
                hintText: "请输入手机号",
                border: OutlineInputBorder(),
                filled: true,
                fillColor: Colors.grey[100],
              ) ,
            ),
            SizedBox(height: 10,),
            TextField(
              controller: passWordTextEditController,
              decoration:InputDecoration(
                labelText: "pass word",
                icon: Icon(Icons.people),
                hintText: "请输入密码",
                border: OutlineInputBorder(),
                filled: true,
                fillColor: Colors.grey[100],
              ) ,
              onChanged: (value){
                print("steve---  on onChanged $value");
              },
              onSubmitted: (value){
                print("steve---  onSubmitted  $value");
              },
            ),

            SizedBox(height: 40,),
            Container(
              width: double.infinity,
              height: 44,
              child: FlatButton(
                child: Text("Login ",style: TextStyle(fontSize: 20,color: Colors.white),),
                color: Colors.greenAccent,
                onPressed: (){
                  print("steve---  onPressed ");
                  final username = usetNameTextEditController.text;
                  final password = passWordTextEditController.text;

                  print("steve---  username "+username);
                  print("steve---  password "+password);

                },
              ),
            )
          ],
        ),
      );

    }
  }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Flutter是一种跨平台的移动应用程序开发框架,它提供了丰富的UI控件来构建应用的用户界面。 FlutterUI控件可以分为基础控件和组合控件两种类型。 基础控件包括Text、Image、Button、TextField、Checkbox等常用的用户界面元素。这些控件可用于构建最基本的用户界面,例如显示文本、图片、处理用户输入等。开发者可以通过自定义这些控件的属性和样式来满足应用需求。 组合控件可以由多个基础控件组合而成,以实现更复杂和功能更强大的用户界面。例如,开发者可以将多个基础控件嵌套在一起,创建出自定义的界面模块。Flutter提供了丰富的组合控件,例如ListView(列表视图)、GridView(网格视图)、AppBar(应用栏)、BottomNavigationBar(底部导航栏)等,开发者可以根据应用需求选择合适的组合控件。 除了基础控件和组合控件,Flutter还提供了一些特殊的UI控件,用于处理特定场景的用户交互。例如,Flutter提供了Dialog(对话框)控件,用于显示弹出窗口,让用户进行选择或提供提示信息。Flutter还提供了SnackBar(消息提示条)控件,用于在屏幕底部显示临时的消息提示。 总结来说,Flutter提供了丰富多样的UI控件,开发者可以根据应用需求选择合适的控件来构建漂亮和交互性强的移动应用程序界面。无论是基础控件还是组合控件,Flutter都提供了详细的文档和示例代码,方便开发者学习和使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值