[flutter-11] StatefulWidget-Counter

2021/6/1 18:50:50

本文主要是介绍[flutter-11] StatefulWidget-Counter,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1. StatefulWidget-Counter

  • 自定义学习flutter 默认计数器demo
  • 添加系统图片: child: Icon(Icons.add)
import 'package:flutter/material.dart';

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

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: HomeWidget(),
      theme: ThemeData.dark(),
    );
  }
}

class HomeWidget extends StatefulWidget {
  @override
  _HomeState createState() => _HomeState();
}

class _HomeState extends State<HomeWidget> {
  var _counter = 0;
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('首页'),
      ),
      body: ContentfulWidget(this._counter),
      floatingActionButton: FloatingActionButton(
        onPressed: _incrementCounter,
        tooltip: 'incrementCount',
        child: Icon(Icons.add), // 添加系统图片
      ),
    );
  }

  // 回调函数
  void _incrementCounter() {
    setState(() {
      _counter++;
    });
  }
}

// ContentlessWidget

class ContentlessWidget extends StatelessWidget {
  final int counter;
  //ContentWidget1({Key key, this.counter}) : super(key: key);
  ContentlessWidget(this.counter);

  @override
  Widget build(BuildContext context) {
    return Center(
      child: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        children: [
          Text(
            'You have pushed the button this many times:',
            style: TextStyle(fontSize: 15),
          ),
          Text(
            '$counter',
            style: TextStyle(fontSize: 40),
          ),
        ],
      ),
    );
  }
}

// ContentfulWidget

class ContentfulWidget extends StatefulWidget {
  @override
  _ContentState createState() => _ContentState();
  ContentfulWidget(this.counter);
  final int counter;
}

class _ContentState extends State<ContentfulWidget> {
  @override
  Widget build(BuildContext context) {
    return Center(
      child: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        children: [
          Text(
            'You have pushed the button this many times:',
            style: TextStyle(fontSize: 15),
          ),
          Text(
            '${widget.counter}',
            style: TextStyle(fontSize: 40),
          ),
        ],
      ),
    );
  }
}



这篇关于[flutter-11] StatefulWidget-Counter的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程