Flutter-Padding组件

1. 说明

在html中常见的布局标签都有padding属性,但是Flutter中很多Widget是没有padding属性。这个时候 我们可以用Padding组件处理容器与子元素之间的间距

2. 属性

padding:padding值, EdgeInsetss设置填充的值

child:子组件

3. 示例

(1)EdgeInsets方法说明

EdgeInsets.fromLTRB(double left, double top, double right, double bottom):分别指定四个方向,必须填值。

EdgeInsets.all(double value) : 所有方向使用相同数值。

EdgeInsets.only({left, top, right ,bottom }):可以设置具体某个方向(也可以同时指定多个方向)。

EdgeInsets.symmetric({vertical, horizontal}):用于设置对称方向,vertical指top和bottom,horizontal指left和right。

(2)代码示例
复制代码
import 'package:flutter/material.dart';
import '../../res/listData.dart';
  
void main() {
  runApp(const MyApp());
}
  
class MyApp extends StatelessWidget {
  const MyApp({Key? key})
      : super(key: key); // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: Scaffold(
        appBar: AppBar(title: const Text("FLutter App")),
        body: const HomePage(),
      ),
    );
  }
}
  
class HomePage extends StatelessWidget {
  const HomePage({Key? key}) : super(key: key);
  
  @override
  Widget build(BuildContext context) {
    return GridView.count(
      padding: const EdgeInsets.all(10),
      crossAxisCount: 2,
      childAspectRatio: 1,
      children: [
        Padding(
          padding: const EdgeInsets.all(10),
          child: Image.asset('images/1.png', fit: BoxFit.cover),
        ),
        Padding(
          padding: const EdgeInsets.all(10),
          child: Image.asset('images/2.png', fit: BoxFit.cover),
        ),
        Padding(
          padding: const EdgeInsets.all(10),
          child: Image.asset('images/3.png', fit: BoxFit.cover),
        ),
        Padding(
          padding: const EdgeInsets.all(10),
          child: Image.asset('images/4.png', fit: BoxFit.cover),
        ),
        Padding(
          padding: const EdgeInsets.all(10),
          child: Image.asset('images/5.png', fit: BoxFit.cover),
        ),
        Padding(
          padding: const EdgeInsets.all(10),
          child: Image.asset('images/6.png', fit: BoxFit.cover),
        ),
      ],
    );
  }
}
相关推荐
涔溪13 分钟前
Vite 和 Webpack 这两款主流前端构建工具的核心区别,包括它们的设计理念、工作机制和实际使用体验上的差异。
前端·webpack·vite
0思必得018 分钟前
[Web自动化] 开发者工具元素(Elements)面板
运维·前端·自动化·web自动化·开发者工具
遇到困难睡大觉哈哈22 分钟前
Harmony os ——ArkTS 语言笔记(五):泛型、空安全与可选链
前端·笔记·安全·harmonyos·鸿蒙
可触的未来,发芽的智生37 分钟前
微论-自成长系统引发的NLP新生
javascript·人工智能·python·程序人生·自然语言处理
八哥程序员1 小时前
你真的理解了 javascript 中的原型及原型链?
前端·javascript
冴羽1 小时前
10 个 Nano Banana Pro 专业级生图技巧
前端·人工智能·aigc
7ayl1 小时前
Vue3 - runtime-core的渲染器初始化流程
前端·vue.js
前端老宋Running1 小时前
React 的“时光胶囊”:useRef 才是那个打破“闭包陷阱”的救世主
前端·react.js·设计模式
yinuo1 小时前
前端跨页面通讯终极指南③:LocalStorage 用法全解析
前端
隔壁的大叔2 小时前
正则解决Markdown流式输出不完整图片、表格、数学公式
前端·javascript