文章目录

  • 1.Text:文字与文字样式
  • 2.RichText:行内多样式的文字
  • 3.Container:容器
  • 4.BoxDecoration:装饰盒子
  • 5.BoxDecoration:边框(border)
  • 6.圆角效果
  • 7.BoxDecoration:阴影(borderShadow)
  • 8.BoxDecoration:形状(shape)
  • 9. BoxDecoration:渐变(gradient)
  • 10.BoxDecoration:背景图像(image)
  • 完整dart

1.Text:文字与文字样式

import 'package:flutter/material.dart';
class BaseDemo extends StatelessWidget{final TextStyle _textStyle=TextStyle(fontSize:16.0,);final String _author='李白';final String _title='将进酒';@overrideWidget build(BuildContext context) {// TODO: implement buildreturn Text('《$_title》——$_author。君不见黄河之水天上来,奔流到海不复回。君不见高堂明镜悲白发,朝如青丝暮成雪。人生得意须尽欢,莫使金樽空对月。天生我材必有用,千金散尽还复来。烹羊宰牛且为乐,会须一饮三百杯。',textAlign: TextAlign.left,//对齐方式style: _textStyle,//文字样式maxLines: 3,//最多三行overflow: TextOverflow.ellipsis,//多出来的用省略号代替);}
}

2.RichText:行内多样式的文字

import 'package:flutter/material.dart';
class BaseDemo extends StatelessWidget{@overrideWidget build(BuildContext context) {// TODO: implement buildreturn RichText(text: TextSpan(text:'ninghao',style:TextStyle(color: Colors.deepPurpleAccent,fontSize: 34.0,fontStyle: FontStyle.italic,fontWeight: FontWeight.w100,),children: [//子部件,其他样式TextSpan(text: '.net',style: TextStyle(fontSize:17.0,color:Colors.grey,),)]));}
}

3.Container:容器

import 'package:flutter/material.dart';
class BaseDemo extends StatelessWidget{@overrideWidget build(BuildContext context) {// TODO: implement buildreturn Container(//容器color:Colors.grey[100],child:Row(//Row小部件可以放一些水平放置的部件children:<Widget>[Container(child:Icon(Icons.pool,size:32.0,color:Colors.white),color: Color.fromRGBO(3, 54, 255, 1.0),padding: EdgeInsets.all(16.0),//内边距margin: EdgeInsets.all(8.0),//外边距width:90.0,height: 90.0,)]));}
}

4.BoxDecoration:装饰盒子

出现这个错,是因为重复添加了color

import 'package:flutter/material.dart';
class BaseDemo extends StatelessWidget{@overrideWidget build(BuildContext context) {// TODO: implement buildreturn Container(//容器color:Colors.grey[100],child:Row(//Row小部件可以放一些水平放置的部件mainAxisAlignment: MainAxisAlignment.center,//主轴对齐,居中children:<Widget>[Container(child:Icon(Icons.pool,size:32.0,color:Colors.white),//color: Color.fromRGBO(3, 54, 255, 1.0),padding: EdgeInsets.all(16.0),//内边距margin: EdgeInsets.all(8.0),//外边距width:90.0,height: 90.0,decoration: BoxDecoration(//装饰盒子color:Color.fromRGBO(3, 54, 255, 1.0),),)]));}
}

5.BoxDecoration:边框(border)

上下添加边框:

decoration: BoxDecoration(//装饰盒子color:Color.fromRGBO(3, 54, 255, 1.0),border: Border(top:BorderSide(color: Colors.indigoAccent[100],width: 3.0,style: BorderStyle.solid),bottom:BorderSide(color: Colors.indigoAccent[100],width: 3.0,style: BorderStyle.solid),)),

周围都添加边框:

border: Border.all(color: Colors.indigoAccent[100],width: 3.0,style: BorderStyle.solid),

6.圆角效果

borderRadius: BorderRadius.circular(16.0),//圆角效果,圆形的盒子不能有圆角效果


单独设置:

borderRadius: BorderRadius.only(topLeft:Radius.circular(64.0),//左上角bottomLeft:Radius.circular(64.0),//左下角)//圆角效果,圆形的盒子不能有圆角效果

decoration: BoxDecoration(//装饰盒子color:Color.fromRGBO(3, 54, 255, 1.0),border: Border.all(color: Colors.indigoAccent[100],width: 3.0,style: BorderStyle.solid),//边框效果borderRadius: BorderRadius.only(topLeft:Radius.circular(64.0),//左上角bottomLeft:Radius.circular(64.0),//左下角)//圆角效果),

7.BoxDecoration:阴影(borderShadow)

boxShadow: [BoxShadow(offset:Offset(0.0,7.0),//阴影偏移,x,ycolor: Color.fromRGBO(16,20, 188, 1.0),//颜色,默认黑色blurRadius: 20.0,//值越大,模糊程度越明显spreadRadius: -3.0,//控制阴影的扩撒程度,为正就会扩大,为负就会缩小),   ]

8.BoxDecoration:形状(shape)

圆角效果,圆形的盒子不能有圆角效果

shape: BoxShape.circle,

9. BoxDecoration:渐变(gradient)

gradient: RadialGradient(//镜像渐变colors: [Color.fromRGBO(7, 102, 255, 1.0),Color.fromRGBO(3, 28, 128, 1.0),],),

gradient: LinearGradient(//RadialGradient镜像渐变,LinearGradient线性渐变,默认从左到右colors: [Color.fromRGBO(7, 102, 255, 1.0),Color.fromRGBO(3, 28, 128, 1.0),],begin: Alignment.topCenter,//可设置渐变方向end: Alignment.bottomCenter,),

10.BoxDecoration:背景图像(image)

decoration: BoxDecoration(//设置背景图片image:DecorationImage(image:NetworkImage('https://resources.ninghao.org/images/say-hello-to-barry.jpg'),alignment:Alignment.topCenter,//repeat: ImageRepeat.repeatY,//延Y轴重复fit:BoxFit.cover,//填充方式,填满colorFilter:ColorFilter.mode(//加滤镜Colors.indigoAccent[400].withOpacity(0.5),BlendMode.hardLight,),)),

完整dart

import 'package:flutter/material.dart';
class BaseDemo extends StatelessWidget{@overrideWidget build(BuildContext context) {// TODO: implement buildreturn Container(//容器//color:Colors.grey[100],decoration: BoxDecoration(//设置背景图片image:DecorationImage(image:NetworkImage('https://resources.ninghao.org/images/say-hello-to-barry.jpg'),alignment:Alignment.topCenter,//repeat: ImageRepeat.repeatY,//延Y轴重复fit:BoxFit.cover,//填充方式,填满colorFilter:ColorFilter.mode(//加滤镜Colors.indigoAccent[400].withOpacity(0.5),BlendMode.hardLight,),)),child:Row(//Row小部件可以放一些水平放置的部件mainAxisAlignment: MainAxisAlignment.center,//主轴对齐,居中children:<Widget>[Container(child:Icon(Icons.pool,size:32.0,color:Colors.white),//color: Color.fromRGBO(3, 54, 255, 1.0),padding: EdgeInsets.all(16.0),//内边距margin: EdgeInsets.all(8.0),//外边距width:90.0,height: 90.0,decoration: BoxDecoration(//装饰盒子color:Color.fromRGBO(3, 54, 255, 1.0),border: Border.all(color: Colors.indigoAccent[100],width: 3.0,style: BorderStyle.solid),//边框效果//borderRadius: BorderRadius.circular(16.0),//圆角效果,圆形的盒子不能有圆角效果boxShadow: [BoxShadow(offset:Offset(0.0,7.0),//阴影偏移,x,ycolor: Color.fromRGBO(16,20, 188, 1.0),//颜色,默认黑色blurRadius: 20.0,//值越大,模糊程度越明显spreadRadius: -3.0,//控制阴影的扩撒程度,为正就会扩大,为负就会缩小),   ],shape: BoxShape.circle,gradient: LinearGradient(//RadialGradient镜像渐变,LinearGradient线性渐变,默认从左到右colors: [Color.fromRGBO(7, 102, 255, 1.0),Color.fromRGBO(3, 28, 128, 1.0),],begin: Alignment.topCenter,//可设置渐变方向end: Alignment.bottomCenter,),),)]));}
}

Flutter 四:基础部件相关推荐

  1. Flutter (四) 基础 Widgets、Material Components Widget 全面介绍

    基础 Widgets 重要概念 一切皆组件.Flutter 所有的元素都是由组件组成.比如一个布局元素.一个动画.一个装饰效果等. 容器 Container 容器组件 Container 包含一个子 ...

  2. Flutter(四)——基础组件

    本文目录 前言 基础组件 Text 常用属性使用 Icon Image Button FlutterLogo 前言 你如果做过Android开发,那一定熟悉里面各种官方提供的布局,比如LinearLa ...

  3. Flutter学习之Dart语法特性

    一.前言 第一天把Flutter环境搭建了,并简单实现第运行第一个Flutter项目,感觉很不错,一些基本操作和原生体验差不多.用Flutter框架写过App项目的开发者都知道,Flutter是一个使 ...

  4. Flutter 学习

    Flutter 学习 参照:https://book.flutterchina.club/ 参照:https://flutter.cn/docs/development/platform-integr ...

  5. 移动开发还有未来吗?

    作者 | 曹立成 本文经授权转自InterestDriven(ID:hello123android) 我是一名 Android 开发者.从2017年下半年开始,就开始听到各种言论,例如 "A ...

  6. 2019年Android开发的未来发展方向该如何走?

    作为一名资深的Android 开发者.从2017年下半年开始,就听到各种言论,例如"Android 开发凉凉"."移动端开发没出路了赶紧转行"."要被 ...

  7. 写给新手Android程序员的一封信

    "当你不创造东西时,你只会根据自己的感觉而不是能力去看待问题." 欢迎来到程序员的世界.在这个世界上,不是有很多人想创造软件并解决问题. 对于下面的文字你不必完全接受,所有这些来自 ...

  8. 股市大跌对于IT行业的我们应该如何应对!2020年Android开发的未来发展方向该如何走?

    作者:Android架构 原文链接:https://zhuanlan.zhihu.com/p/64736562 最近这几天基金股市一片绿油油,心拔凉拔凉的.虽然我是一名Android开发者,但是更是一 ...

  9. Flutter 动画全解析(动画四要素、动画组件、隐式动画组件原理等)

    本文通过拆解 Flutter 中动画的实现方式以及原理来介绍动画实现的整个过程. 1. 动画四要素 动画在各个平台的实现原理都基本相同,是在一段时间内一系列连续变化画面的帧构成的.在 Flutter ...

最新文章

  1. 复杂JSON参数传递后台处理方式
  2. 【深度学习】锐化滤波器核 与 边缘检测核
  3. MySql学习19-----用户管理
  4. 开发者必备Docker命令
  5. 川崎机器人c#通讯(转)
  6. MUI - 自动轮播图 实现
  7. 1688: [Usaco2005 Open]Disease Manangement 疾病管理( 枚举 )
  8. 国家信息安全水平考试NISP一级模拟题
  9. java代码做一个电子表
  10. 【前端性能优化】雅虎35条军规
  11. linux给文件夹添加查看密码是什么,Linux如何给文件夹设置密码
  12. 【PS | 学习】蛋黄酥海报制作
  13. 三取二计算机,三取二是什么意思
  14. C#中的异步和多线程
  15. 广告轮播图的前后台实现
  16. 利用opencv+QT打开并显示图片
  17. 划一划新闻作手机端最简洁的新闻聚合网站
  18. (C语言)银行存款定期到期自动转存,到期的利息计入本金合并转存
  19. 中国知名IT企业的资料
  20. 学习之道(读书笔记)

热门文章

  1. 计算机相关职位英文简称,计算机行业求职简历中英文职位对照
  2. 【译文】使用Rstudio调试代码(debug)
  3. 2023.1.15单词打卡
  4. 计算机软件删除了怎么恢复,卸载的软件怎么恢复,详细教您电脑卸载的软件怎么恢复...
  5. 设置IE浏览器新打开的页面在当前页的新选项卡中打开
  6. 帝国CMS使用百度API提交工具,将当天新发表的内容提交给百度
  7. arXiv每日推荐-4.8:计算机视觉/图像处理每日论文速递
  8. 欧空局(ESA)开源了众多软件与数据资源
  9. 错过BTC就不要在错过Micoin
  10. koa html中添加数据,浅谈在koa2中实现页面渲染的全局数据