Flutter 基础布局Widgets之FittedBox详解

132.jpg

FittedBox概述

FittedBox组件的作用是对child组件进行缩放和对齐方式的设置,其缩放的参数为fit,有多种选择的方式,而对齐方式alinment用法则和之前一致,即很多都是相通的。

FittedBox构造函数

const FittedBox({
    Key key,
    this.fit = BoxFit.contain,
    this.alignment = Alignment.center,
    Widget child,
  })
  • fit 即child的缩放方式,比如以下缩放方式:
    fill(通过扭曲源的纵横比填充目标框。):
image

contain(尽可能大,同时仍然将源完全包含在目标框中):

image

cover(尽可能小,同时仍然覆盖整个目标框):

image

fitWidth(确保显示了源的全部宽度,不管这是否意味着源垂直地溢出目标框):

image

fitHeight(确保显示源的完整高度,不管这是否意味着源水平地溢出目标框):

image

none(将源文件对齐到目标框内(默认情况下居中),并丢弃位于框外的源文件的任何部分。
源映像没有调整大小。):

image

scaleDown(将源文件对齐到目标框内(默认情况下,居中),如果需要,将源文件向下缩放,以确保源文件适合框内,这与contains相同,如果它会收缩图像,则它与none相同):

image
  • alignment child对齐方式

简单示例

// fittedBox
import 'package:flutter/material.dart';

class FittedBoxLearn extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new Scaffold(
        appBar: AppBar(
          title: Text('FittedBox'),
        ),
        body: Center(
          child: Container(
            width: 300,
            height: 400,
            decoration: BoxDecoration(
              border: Border.all(), 
              
              ),
            // 根据内部child伸缩填充父容器
            child: FittedBox(
              // 填充方式 比如contain 尽可能大,同时仍然将源完全包含在目标框中。  还有cover、fill、fitWidth、fitHeight等方式
              fit: BoxFit.contain,
              // 对齐方式
              alignment: Alignment(0, 0),
              child: Container(
                color: Colors.blueAccent,
                width: 30,
                height: 30,
              )
              
            ),
          ),
        ));
  }
}

示例效果

E4F43F9BA9B8953BC27488883B30B82F.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • CSS 是什么 css(Cascading Style Sheets),层叠样式表,选择器{属性:值;属性:值}h...
    崔敏嫣阅读 5,345评论 0 5
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 28,078评论 1 45
  • H5移动端知识点总结 阅读目录 移动开发基本知识点 calc基本用法 box-sizing的理解及使用 理解dis...
    Mx勇阅读 10,122评论 0 26
  • 1.乡间小路 2.绿树成阴 3.丰收的季节 4.农民的辛苦 5.乡间落日 6.生日蛋糕 7.分享的快乐 8.水果之...
    黑白鱼的流浪阅读 1,007评论 0 0
  • 健身房开了桑巴舞蹈的新课程,作为一个爱运动的妹纸,虽然在舞蹈这方面四肢不是很协调,但还是好奇的想要去学学看~ 老师...
    Sunny邹旭阅读 3,538评论 0 0