Flutter的Padding、Raw、Column、Expanded组件的基本使用
Padding组件:
Padding组件的基本使用代码:
import 'package:flutter/material.dart';
import 'package:flutter_testdemo001/res/listData.dart'; void main() {
runApp(MyApp());
} class MyApp extends StatelessWidget {
const MyApp({Key key}) : super(key: key); @override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text("flutter demo"),
),
body: HomeContent(),
),
);
}
} class HomeContent extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Padding(
padding: EdgeInsets.fromLTRB(, ,,),
child: GridView.count(
crossAxisCount: ,
childAspectRatio: 1.7,
children: <Widget>[
Padding(
padding: EdgeInsets.fromLTRB(, , , ),
child: Image.network("https://www.itying.com/images/flutter/1.png",
fit: BoxFit.cover),
),
Padding(
padding: EdgeInsets.fromLTRB(, , , ),
child: Image.network("https://www.itying.com/images/flutter/2.png",
fit: BoxFit.cover),
),
Padding(
padding: EdgeInsets.fromLTRB(, , , ),
child: Image.network("https://www.itying.com/images/flutter/3.png",
fit: BoxFit.cover),
),
Padding(
padding: EdgeInsets.fromLTRB(, , , ),
child: Image.network("https://www.itying.com/images/flutter/4.png",
fit: BoxFit.cover),
),
Padding(
padding: EdgeInsets.fromLTRB(, , , ),
child: Image.network("https://www.itying.com/images/flutter/5.png",
fit: BoxFit.cover),
),
],
));
}
}
Row和Column的使用:
import 'package:flutter/material.dart';
import 'package:flutter_testdemo001/res/listData.dart'; void main() {
runApp(MyApp());
} class MyApp extends StatelessWidget {
const MyApp({Key key}) : super(key: key); @override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text("flutter demo"),
),
body: HomeContent(),
),
);
}
} class HomeContent extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
width: 400.0,
height: 600.0,
color: Colors.pink,
child: Column(
mainAxisAlignment: MainAxisAlignment.end, //主轴方向:是Y轴
crossAxisAlignment: CrossAxisAlignment.center, //X轴:
children: <Widget>[
Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly, //主轴方向是X轴
crossAxisAlignment: CrossAxisAlignment.end,//y轴:
children: <Widget>[
IconContainer(Icons.home, color: Colors.blue),
IconContainer(Icons.home, color: Colors.red),
IconContainer(Icons.home, color: Colors.green),
],
),
Container(
height: 35.0,
width: 35.0,
margin: EdgeInsets.fromLTRB(, , , ), child:Icon(Icons.close),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.all(
Radius.circular()
)
),
)
],
),
);
}
} class IconContainer extends StatelessWidget {
double size = 32.0;
Color color = Colors.red;
IconData icon; IconContainer(this.icon, {this.color = Colors.red, this.size}) {}
@override
Widget build(BuildContext context) {
// TODO: implement build
return Container(
height: 100.0,
width: 100.0,
color: this.color,
child: Center(
child: Icon(
this.icon,
size: this.size,
color: Colors.white,
),
),
);
}
}
Expanded的使用:
import 'package:flutter/material.dart';
import 'package:flutter_testdemo001/res/listData.dart'; void main() {
runApp(MyApp());
} class MyApp extends StatelessWidget {
const MyApp({Key key}) : super(key: key); @override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text("flutter demo"),
),
body: HomeContent(),
),
);
}
} class HomeContent extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Row(
children: <Widget>[
Expanded(
flex: ,
child: IconContainer(Icons.home,color:Colors.red),
),
IconContainer(Icons.home,color:Colors.green),
],
); }
} class IconContainer extends StatelessWidget {
double size = 32.0;
Color color = Colors.red;
IconData icon; IconContainer(this.icon, {this.color = Colors.red, this.size}) {}
@override
Widget build(BuildContext context) {
// TODO: implement build
return Container(
height: 100.0,
width: 100.0,
color: this.color,
child: Center(
child: Icon(
this.icon,
size: this.size,
color: Colors.white,
),
),
);
}
}
实例效果:
import 'package:flutter/material.dart';
import 'package:flutter_testdemo001/res/listData.dart'; void main() {
runApp(MyApp());
} class MyApp extends StatelessWidget {
const MyApp({Key key}) : super(key: key); @override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text("flutter demo"),
),
body: HomeContent(),
),
);
}
} class HomeContent extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Column(
children: <Widget>[
Row(
children: <Widget>[
Expanded(
child: Container(
height: ,
color: Colors.black,
child: Text("你好Flutter"),
),
)
],
),
SizedBox(height: ),
Row(
children: <Widget>[
Expanded(
flex: ,
child: Container(
height: ,
child: Image.network(
"https://www.itying.com/images/flutter/1.png",
fit: BoxFit.cover),
),
),
SizedBox(width: ),
Expanded(
flex: ,
child: Container(
height: ,
child: ListView(
children: <Widget>[
Container(
height: ,
child: Image.network(
"https://www.itying.com/images/flutter/1.png",
fit: BoxFit.cover),
),
SizedBox(height: ),
Container(
height: ,
child: Image.network(
"https://www.itying.com/images/flutter/1.png",
fit: BoxFit.cover),
),
],
),
),
)
],
)
],
);
}
}
Flutter的Padding、Raw、Column、Expanded组件的基本使用的更多相关文章
- 10Flutter页面布局 Padding Row Column Expanded组件详解:
Padding组件: main.dart import 'package:flutter/material.dart'; import 'res/listData.dart'; /* flutter页 ...
- flutter 页面布局 Paddiing Row Column Expanded 组件
Flutter Paddiing 组件 在 html 中常见的布局标签都有 padding 属性,但是 Flutter 中很多 Widget 是没有 padding 属 性.这个时候我们可以用 Pad ...
- 页面布局 Paddiing Row Column Expanded 组件详解
一.Paddiing 组件 padding EdgeInsetss 设置填充的值 child 组件 return Padding( padding: EdgeIn ...
- Flutter——Expanded组件("可伸缩"组件)
Expanded组件可以结合Row和Column布局组件使用. Expanded组件的常用属性 属性 说明 flex 元素占整个父Row/Column的比例 child 子元素 import 'pac ...
- Flutter中Expanded组件用法
Flutter中Expanded组件用法 Expanded组件可以使Row.Column.Flex等子组件在其主轴方向上展开并填充可用空间(例如,Row在水平方向,Column在垂直方向).如果多个子 ...
- Flutter 中的常见的按钮组件 以及自定义按钮组件
Flutter 里有很多的 Button 组件很多,常见的按钮组件有:RaisedButton.FlatButton. IconButton.OutlineButton.ButtonBar.Float ...
- Flutter 中的常见的按钮组件 以及自 定义按钮组件
一.Flutter 中的按钮组件介绍 Flutter 里有很多的 Button 组件很多,常见的按钮组件有:RaisedButton.FlatButton. IconButton.Outlin ...
- Flutter学习笔记(9)--组件Widget
如需转载,请注明出处:Flutter学习笔记(9)--组件Widget 在Flutter中,所有的显示都是Widget,Widget是一切的基础,我们可以通过修改数据,再用setState设置数据(调 ...
- Flutter(75):Sliver组件之SliverFixedExtentList
Flutter教学目录持续更新中 Github源代码持续更新中 1.SliverFixedExtentList 可以固定Item高度的SliverList 2.SliverFixedExtentLis ...
随机推荐
- windows下,tomcat设置为服务启动
一.配置号tomcat 二.cmd命令符下进入tomcat/bin目录,输入:service.bat install 三.运行中输入services.msc 打开服务管理控制台,可以找到 Apache ...
- 浏览器从输入URL到渲染完页面的整个过程
从输入URL到渲染出整个页面的过程包括三个部分: 1.DNS解析URL的过程 2.浏览器发送请求与服务器交互的过程 3.浏览器对接收到的html页面渲染的过程 一.DNS解析URL的过程 DNS解析的 ...
- cobbler部署错误总结
web 报错500 Internal Server Error解决方案 在安装使用Cobbler web界面的时候提示HTTP 500错误,也就是服务器内部错误,检查防火墙和selinux都是为关闭状 ...
- 快速了解前端打包 webpack
一.介绍 (1)概念 webpack 用于编译 JavaScript 模块,是 JavaScript 静态模块的打包工具.从 webpack v4.0.0 开始,可以不用引入一个配置文件. (2)核心 ...
- FileReader 事件用法
FileReader对象采用异步方式读取文件,在不同的读取阶段会触发不同的事件. 事件列表: (1).abort事件:读取中断或调用reader.abort()方法时触发. (2).error事件:读 ...
- Discuz!基础的代码安全和代码规范
变量所有漏洞都来源于变量,因此变量首先要做的就是定义初始化.用任何一个变量前一定要先定义,初始化它虽然现在Discuz!X来说,GPC不会被全局覆盖了,但是大家写插件的过程中也不要忽视了因为在服务器p ...
- spring security 学习资料
spring security 学习资料 网址 Spring Security 文档参考手册中文版 https://springcloud.cc/spring-security.html
- git 撤销merge
如果没有别的操作,直接回到上一次提交就可以了,在a分支执行 git reset --hard HEAD~ 会回到未merge前的状态,清空暂存区,销毁数据,如果没有推送到远程,数据就会被覆盖无法恢复, ...
- 一个使用vue和echarts结合的demo
前端框架真的很神奇,接触了几天vue.js,用它结合echarts做一个数据分析图,效果如下: 附上源码地址:https://github.com/qingguoYan/orderVue.git
- moya
https://juejin.im/post/5ac2cf34f265da23a1421483 https://juejin.im/post/5a69e9f9f265da3e290c6782