Container容器组件

代码


import 'package:flutter/material.dart';

void main() {
  runApp(MaterialApp(
    home: Scaffold(
        appBar: AppBar(title: const Text("这是导航栏")),
        body: const Column(children: [  //引入多个主键
          myBody(),
          MyButton()
        ],))
  ));
}
// ignore: camel_case_types
class myBody extends StatelessWidget {
  const myBody({super.key});   @override
  Widget build(BuildContext context) {
    return Center(
        child: Container(
      // alignment: Alignment.center, //配置Container内容器的方位
      alignment: Alignment.center, //配置Container内容器的方位
      width: 200,
      height: 200,
      // transform: Matrix4.translationValues(40, 0, 0), //位移
      // transform: Matrix4.rotationZ(0.2), //旋转
      //  transform: Matrix4.skewX(0.2), //倾斜
      margin:  const EdgeInsets.all(20.0),
      decoration: BoxDecoration(
        color: const Color.fromARGB(255, 13, 212, 103), //背景颜色
        border: Border.all(
            //边框
            color: Colors.red, //边框颜色
            width: 2.0),
        borderRadius: BorderRadius.circular(40), //圆角
        boxShadow: const [
          //配置阴影效果
          BoxShadow(
            color: Color.fromARGB(255, 236, 130, 8),
            offset: Offset(10.0, 10.0), //在 Flutter 中,Offset 是一个简单的二维坐标点
            blurRadius: 100.0, //阴影范围
          )
        ],
        gradient: const LinearGradient( // LinearGradient 背景线性渐变 RadialGradient径向渐变
          colors: [Color.fromARGB(255, 186, 192, 104), Color.fromARGB(255, 116, 240, 213)]),
      ),       child: const Text("这是  内容",
          style: TextStyle(color: Colors.red, fontSize: 20.0)),
    ));
  }
} //按扭
class MyButton extends StatelessWidget {
  const MyButton({super.key});   @override
  Widget build(BuildContext context) {
    return Container(
      width: 240,
      height: 60,
      alignment:Alignment.center,
      // margin:  const EdgeInsets.all(20.0),  //所有的外边距
      margin:  const EdgeInsets.fromLTRB(20, 40, 20, 30), //四周的外边距
      decoration:  BoxDecoration( color: const Color.fromARGB(255, 99, 193, 221),
      borderRadius: BorderRadius.circular(20)),  //圆角
      child: const Text("按钮",style: TextStyle(
        color: Color.fromARGB(255, 9, 1, 31),
        fontSize: 20,
       ),),
    );
  }
}

padding 和maring
padding 是让容器和里面的元素有相应的间距,margin是让容器和容器外部的其他容器有相应的间距

Container(
margin: EdgeInsets.all(20.0), //容器外补白
color: Colors.orange,
child: Text("Hello world!"),
),
Container(
padding: EdgeInsets.all(20.0), //容器内补白
color: Colors.orange,
child: Text("Hello world!"),
),

3、Container容器组件的更多相关文章

  1. Flutter Container容器组件、Text文本组件详解

    import 'package:flutter/material.dart'; void main(){ runApp(MyApp()); } class MyApp extends Stateles ...

  2. 【Flutter】容器类组件之Container容器

    前言 Container是一个组合类容器,它本身不对应具体的RenderObject,它是DecoratedBox.ConstrainedBox.Transform.Padding.Align等组件组 ...

  3. 展示组件(Presentational component)和容器组件(Container component)之间有何不同

    展示组件关心组件看起来是什么.展示专门通过 props 接受数据和回调,并且几乎不会有自身的状态,但当展示组件拥有自身的状态时,通常也只关心 UI 状态而不是数据的状态.(子组件)容器组件则更关心组件 ...

  4. Castle IOC容器组件生命周期管理

    主要内容 1.生命处理方式 2.自定义生命处理方式 3.生命周期处理 一.生命处理方式 我们通常创建一个组件的实例使用new关键字,这样每次创建出来的都是一个新的实例,如果想要组件只有一个实例,我们会 ...

  5. React 之容器组件和展示组件相分离解密

    Redux 的 React 绑定库包含了 容器组件和展示组件相分离 的开发思想.明智的做法是只在最顶层组件(如路由操作)里使用 Redux.其余内部组件仅仅是展示性的,所有数据都通过 props 传入 ...

  6. Qt容器组件(二)之QWidgetStack、QMdiArea、QDockWidget

    QT中有九种容器组件,分别是组合框QGroupBox.滚动区QScrollArea.工具箱QToolBox.选项卡QTabWidget.控件栈QWidgetStack.框架QFrame.组件QWidg ...

  7. Qt容器组件(一)之QGroupBox、QScrollArea、QToolBox、QTabWidget

    QT中有九种容器组件,分别是组合框QGroupBox.滚动区QScrollArea.工具箱QToolBox.选项卡QTabWidget.控件栈QWidgetStack.框架QFrame.组件QWidg ...

  8. React容器组件和展示组件

    Presentational and Container Components   展示组件   - 只关心它们的样子.   - 可能同时包含子级容器组件和展示组件,一般含DOM标签和自定的样式.   ...

  9. Flutter学习笔记(10)--容器组件、图片组件

    如需转载,请注明出处:Flutter学习笔记(10)--容器组件.图片组件 上一篇Flutter学习笔记(9)--组件Widget我们说到了在Flutter中一个非常重要的理念"一切皆为组件 ...

  10. React-UI组件和容器组件

    UI组件负责页面的渲染,又叫傻瓜组件. 容器组件负责逻辑,又叫聪明组件. 当一个组件只有render函数的时候,就可以用无状态组件的形式来定义这个组件.无状态组件怎么定义呢?其实就是一个函数,接受pr ...

随机推荐

  1. 入门篇-其之五-Java运算符(上)

    一元运算符之正负号 Java支持多种一元运算符,一元运算符中的"一元"是指一个操作数.我们初中学过的正负号就属于一元运算符,因为正负号后面只有一个数字. 正数使用+表示,其中+可以 ...

  2. Excel--比较两列数据的异同

    首先得到的数据分为两列,两种类型.由于在网站上搜索的时候,网站的"特殊性"会将000638-32-4 前面的0全部去掉.变成了638-32-4.基于得到了两列稍有不同的数据.由于人 ...

  3. 银河麒麟V10 SP1忘记账户密码后重置/更改账户密码

    开机进入选择界面,按下键盘E键 光标通过键盘上下左右键移到linux行最后一句(此处是seurity=kysec后) 输入空格 console=tty1 single 按下F10键,等待重启 输入pa ...

  4. openwrt使用tailscale实现内网穿透

    问题 之前一直有电信公网ip,最近发现电信公网ip被撤下来了,打电话再去要发现给的是10开头的ip,电信客服还跟我说10开头就是公网ip,= =,根本就不是,无奈使用zerotier进行打洞,把zer ...

  5. OpenGL 坐标系统详解

    GL中的坐标系是标准设备坐标,即他的每个坐标轴的取值范围都是[-1.0,1.0].通常,我们输入到顶点着色器中的顶点坐标都会被转换为标准化设备坐标,然后进行光栅化,转变成屏幕坐标.然而事实上,从顶点坐 ...

  6. 2023 PolarD&N靶场通关笔记 Crypto

    简单类: keyboard2.0 21 31 41 53 63 73 62 72 82 81 91 01 51 61 71 提示:解出来的内容转换为md5值后加上flag{} 数字被分成五组,每组包含 ...

  7. JavaScript高级程序设计笔记07 迭代器与生成器

    迭代器与生成器 1.迭代 反复多次执行一段程序,(有明确的终止条件) 迭代器.生成器 ES6 计数循环(for):最简单的迭代 迭代次数.迭代每次执行的操作 (顺序已知) 古早迭代(有序->数组 ...

  8. 16个值得推荐的.NET ORM框架(含使用情况统计的投票,欢迎参与)

    什么是ORM? ORM 是 Object Relational Mapping 的缩写,译为"对象关系映射",是一种程序设计技术,用于实现面向对象编程语言里不同类型系统的数据之间的 ...

  9. 如何优雅使用 vuex

    大纲 本文内容更多的是讲讲使用 vuex 的一些心得想法,所以大概会讲述下面这些点: Q1:我为什么会想使用 vuex 来管理数据状态交互? Q2:使用 vuex 框架有哪些缺点或者说副作用? Q3: ...

  10. 浅谈仓储UI自动化之路

    1 分层测试 分层测试:就是不同的时间段,不同的团队或团队使用不同的测试用例对产品不同的关注点进行测试.一个系统/产品我们最先看到的是UI层,也就是外观或者说整体,这些是最上层,最上层依赖下面的服务层 ...