Flutter

flutter入门到放弃

2023-08-17  本文已影响0人  xiaotimel
  1. flutter支持热更改
    修改完成后按下保存或者Hot reload(闪电)会自动同步更新页面;
  2. flutter view没有生命周期
    view对应的widgets是不可变的,不能直接更新,要更新必须变更widget状态。简单来说就是用状态改变试图;
  3. 更新view状态需要使用到StatelessWidget状态变更;

入口

Lib目录下main.dart main方法是最开始的入口


入口.png

StatelessWidget和StatefulWidget区别

入口页面

import 'dart:math';

import 'package:flutter/material.dart';

void main() {
  runApp(const SampleApp());
}

class SampleApp extends StatelessWidget{
  const SampleApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title:'Sample App',
      theme: ThemeData(
        primarySwatch: Colors.blue,//主题颜色
      ),
      home: const SampleAppPage(),
    );
  }

}

//页面
class SampleAppPage extends StatefulWidget{
  const SampleAppPage({super.key});

  @override
  State<SampleAppPage> createState() {
    return _SampleAppPageState();
  }
}

class _SampleAppPageState extends State<SampleAppPage>{

  String textShow = "你是猪";
  int clickTimes = 0;
  //点击触发事件
  void _onPressed(){
    clickTimes++;
    setState(() {
      textShow = "点击了$clickTimes";
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title:const Text('page app bar')
      ),
      body: Center(child: Text(textShow),),
      floatingActionButton: FloatingActionButton(
        onPressed: _onPressed,
        tooltip: 'update text',
        child: const Icon(Icons.update),
      ),
    );
  }

}
上一篇下一篇

猜你喜欢

热点阅读