Flutter有狀態(tài)組件使用詳解
有狀態(tài)組件
flutter 主要有分有狀態(tài)組件 StatefulWidget 和無狀態(tài)組件 StatelessWidget,前面我們使用到的都是無狀態(tài)組件,沒有讓頁面上的內(nèi)容發(fā)生變化,當(dāng)我們有需要對頁面的內(nèi)容進(jìn)行動態(tài)修改的時候 ,如果我們使用無狀態(tài)組件,頁面上的內(nèi)容就不會被更新,這時需要用到有狀態(tài)組件。
有狀態(tài)組件就是繼承了StatefulWidget的組件,內(nèi)容更改時調(diào)用
setState(() { 更改的內(nèi)容});
// ignore_for_file: prefer_const_constructors, prefer_collection_literals, deprecated_member_use, unused_local_variable, must_be_immutable, prefer_const_literals_to_create_immutables
import 'package:flutter/material.dart';
void main() {
? runApp(MyApp());
}
class MyApp extends StatelessWidget {
? const MyApp({Key? key}) : super(key: key);
? @override
? Widget build(BuildContext context) {
? ? return MaterialApp(
? ? ? home: Scaffold(
? ? ? ? appBar: AppBar(
? ? ? ? ? title: const Text('Flutter Demo'),
? ? ? ? ),
? ? ? ? body: const HomeContent(),
? ? ? ),
? ? ? theme: ThemeData(
? ? ? ? primarySwatch: Colors.yellow,
? ? ? ),
? ? );
? }
}
//有狀態(tài)自定義組件有兩個類,我們需要返回的寫在第二個類中
class HomeContent extends StatefulWidget {
? const HomeContent({Key? key}) : super(key: key);
? @override
? _HomeContentState createState() => _HomeContentState();
}
class _HomeContentState extends State<HomeContent> {
? int count = 0;
? @override
? Widget build(BuildContext context) {
? ? return Center(
? ? ? child: Column(
? ? ? children: [
? ? ? ? Chip(
? ? ? ? ? label: Text("$count"),
? ? ? ? ),
? ? ? ? ElevatedButton(
? ? ? ? ? ? onPressed: () {
? ? ? ? ? ? ? setState(() {
? ? ? ? ? ? ? ? count++;
? ? ? ? ? ? ? });
? ? ? ? ? ? },
? ? ? ? ? ? child: Text("點(diǎn)擊加一"))
? ? ? ],
? ? ),
? ? );
? }
}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android ListView與getView調(diào)用卡頓問題解決辦法
這篇文章主要介紹了Android ListView與getView調(diào)用卡頓問題解決辦法的相關(guān)資料,這里提供實(shí)例及解決辦法幫助大家解決這種問題,需要的朋友可以參考下2017-08-08
android 仿微信demo——登錄功能實(shí)現(xiàn)(服務(wù)端)
這系列文章主要介紹了微信小程序-閱讀小程序?qū)嵗?,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧,希望能給你們提供幫助2021-06-06
Android WebView自定義長按選擇實(shí)現(xiàn)收藏/分享選中文本功能
這篇文章主要介紹了Android WebView自定義長按選擇實(shí)現(xiàn)收藏/分享選中文本功能,需要的朋友可以參考下2017-06-06
Android?Studio實(shí)現(xiàn)簡單繪圖板
這篇文章主要為大家詳細(xì)介紹了Android?Studio實(shí)現(xiàn)簡單繪圖板,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05
Android實(shí)現(xiàn)左滑退出Activity的完美封裝
這篇文章主要介紹了Android實(shí)現(xiàn)左滑退出Activity的完美封裝,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
Android自定義View實(shí)現(xiàn)QQ運(yùn)動積分轉(zhuǎn)盤抽獎功能
這篇文章主要為大家詳細(xì)介紹了Android自定義View實(shí)現(xiàn)QQ運(yùn)動積分轉(zhuǎn)盤抽獎功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-10-10

