zoukankan      html  css  js  c++  java
  • Context

    build()方法有一个context参数,它是BuildContext类的一个实例,表示当前widget在widget树中的上下文,每一个widget都会对应一个context对象(因为每一个widget都是widget树上的一个节点)。实际上,context是当前widget在widget树中位置中执行”相关操作“的一个句柄,比如它提供了从当前widget开始向上遍历widget树以及按照widget类型查找父级widget的方法。

     1 import 'package:flutter/material.dart';
     2 
     3 class TestContextRoute extends StatelessWidget {
     4   @override
     5   Widget build(BuildContext context) {
     6     return Scaffold(
     7       appBar: AppBar(
     8         title: Text('Test Context'),
     9       ),
    10       body: Container(
    11         child: Builder(builder: (context){
    12           // 在Widget树中向上查找父级‘Scaffold’ widget
    13           Scaffold scaffold = context.ancestorWidgetOfExactType(Scaffold);
    14           // 直接返回 AppBar的title
    15           return (scaffold.appBar as AppBar).title;
    16         }),
    17       ),
    18     );
    19   }
    20 }
  • 相关阅读:
    codeforces 1215 E Marbles-----状压DP
    留坑待填
    Catalan数
    砝码称重
    约数和
    硬币题解
    迎春舞会之数字舞蹈
    过剩数
    猜测棋局
    [NOIP普及组2014第三题]螺旋矩阵
  • 原文地址:https://www.cnblogs.com/timba1322/p/12485527.html
Copyright © 2011-2022 走看看