zoukankan      html  css  js  c++  java
  • 【Flutter】布局类组件之对齐和相对定位

    前言

    如果只想简单的调整一个子元素在父元素中的位置的话,使用Align组件会更简单一些。

    接口描述

    const Align({
        Key key,
        // 需要一个AlignmentGeometry类型的值,表示子组件在父组件中的起始位置。
        // AlignmentGeometry 是一个抽象类,它有两个常用的子类:Alignment和 FractionalOffset。
        this.alignment = Alignment.center,
    
        // widthFactor和heightFactor是用于确定Align 组件本身宽高的属性;
        // 它们是两个缩放因子,会分别乘以子元素的宽、高,最终的结果就是Align 组件的宽高。
        // 如果值为null,则组件的宽高将会占用尽可能多的空间。
        this.widthFactor,
        this.heightFactor,
        Widget child,
      })
    
    

    代码示例

    import 'package:flutter/material.dart';
    
    class AlignTest extends StatelessWidget {
    
      @override
      Widget build(BuildContext context) {
        return Scaffold(
          appBar: AppBar(
            title: Text('对齐和相对定位(Align)'),
          ),
          body: Container(
            // 显式指定了Container的宽、高都为120
            height: 120.0,
             120.0,
            color: Colors.blue[50],
            child: Align(
              // 不显式指定宽高,通过同时指定widthFactor和heightFactor 为2也是可以达到同样的效果:2*60=120
              widthFactor: 2,
              heightFactor: 2,
              alignment: Alignment.topCenter,
              // FlutterLogo 是Flutter SDK提供的一个组件,内容就是Flutter的商标。
              child: FlutterLogo(
                size: 60,
              ),
            ),
          ),
        );
      }
    }
    
    
  • 相关阅读:
    LeetCode 773. Sliding Puzzle
    oracle latch工作原理
    Oracle关于锁的几种类型和参数
    Java的反射机制
    JAVA多线程与并发学习总结
    Spring 概念详解
    Spring的AOP
    spring面试题 对DI , AOP概念的理解
    双11的架构
    Java线程的定义
  • 原文地址:https://www.cnblogs.com/parzulpan/p/12073995.html
Copyright © 2011-2022 走看看