第三百六十一回

2024-02-23 03:04
文章标签 一回 三百六十

本文主要是介绍第三百六十一回,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 1. 概念介绍
  • 2. 实现方法
    • 2.1 环绕效果
    • 2.2 立体效果
  • 3. 示例代码
  • 4. 内容总结

我们在上一章回中介绍了"自定义SlideImageSwitch组件"相关的内容,本章回中将介绍两种阴影效果.闲话休提,让我们一起Talk Flutter吧。

在这里插入图片描述

1. 概念介绍

我们在本章回中将介绍如何实现两种阴影效果,一种是环绕在组件周围的阴影效果,呈发散形状,该效果可以让组件有种发光的效果,类似灯或者太阳;另外一种是只出现
在组件下方的阴影效果,该效果可以让组件呈现出立体的效果。具体的效果可以参考下面的示例图片,图片中黄色区域就是阴影:

2. 实现方法

总体来讲阴影效果都是通过组件实现的,只是不同的阴影效果使用不同的组件,针对这两种阴影效果,我们分别介绍它们的实现方法。

2.1 环绕效果

环绕阴影效果通过Container组件实现,该组件配合BoxDecoration组件可以在其它组件周围添加阴影,Container组件主要负责把组件和阴影组合在一起,通过它
的decoration属性和child属性实现组合功能。真正负责阴影效果的是BoxDecoration组件,它通过boxShadow属性可以组合多个BoxShadow阴影组件,
在BoxShadow组件中可以使用它的属性控制阴影的颜色,范围和位置。

  • color属性:主要用来控制阴影的颜色;
  • offset属性:主要用来控制阴影的范围;
  • blurRadius属性:主要用来控制阴影的范围;

2.2 立体效果

立体阴影效果通过Card组件实现,该组件通过自己的属性既可以把阴影效果和其它组件组合在一起,又可以直接控制阴影的效果,下面是相关的属性:

  • child属性:主要用来把阴影效果和组件组合在一起;
  • shadowColor属性:主要用来控制阴影的颜色;
  • elevation属性:主要用来控制阴影的大小;

3. 示例代码

///演示两种阴影效果:BoxDecoration控制的效果在周围,呈发散形状。对应180的内容
Row(mainAxisAlignment: MainAxisAlignment.spaceAround,children: [///正常的阴影,阴影效果在组件周围四个方向Container(width: 100,height: 100,decoration: const BoxDecoration(color: Colors.blue,boxShadow:[ BoxShadow(color: Colors.yellow,blurRadius: 24.0,),],),),///在正常的阴影的基础通过offset控制阴影的位置Container(width: 100,height: 100,decoration: const BoxDecoration(color: Colors.blue,boxShadow:[ BoxShadow(color: Colors.yellow,///控制阴影的位置offset: Offset(0, 10),///控制阴影的大小blurRadius: 24.0,),],),),///card的阴影效果只在下方位置,有立体效果,无法控制阴影的位置const Card(color: Colors.blue,shadowColor: Colors.yellow,///控制阴影的大小elevation: 24,child: SizedBox(width: 100,height: 100,),),],
),

上面的示例代码演示了如何实现两种阴影效果,它与上一小节中的实现方法保持一致。在演示环绕阴影效果时一个示例保持默认的位置,另外一个示例调整的阴影的位置,
不过调整后阴影效果仍然出现在组件周围,而不会单独出现在某一个边上。此外,我推荐大家自己动手去实践,通过调整阴影的颜色,位置等内容来体会一下阴影效果。

4. 内容总结

最后,我们对本章回的内容做一个全面的总结:

  • 本章回主要介绍了环绕和立体两种阴影效果;
  • 环绕阴影效果主要通过Container组件实现;
  • 立体阴影效果主要通过Card组件实现;
  • 可以调整阴影效果的颜色,范围和位置;
    看官们,与"两种阴影效果"相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!

这篇关于第三百六十一回的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/737309

相关文章

每天一个数据分析题(三百六十七)- 头脑风暴因果图

头脑风暴因果图(鱼骨图)绘制过程中填上问题或现状的是在‘鱼’的哪个部位? A. 鱼尾 B. 鱼头 C. 脊椎 D. 鱼刺 数据分析认证考试介绍:点击进入 题目来源于CDA模拟题库 点击此处获取答案

每天一个数据分析题(三百六十六)- 5WHY分析法

根本原因分析中的5WHY分析法是从下列哪几个层面实施的? A. 制造角度 B. 检验角度 C. 体系角度 D. 以上都是 数据分析认证考试介绍:点击进入 题目来源于CDA模拟题库 点击此处获取答案

每天一个数据分析题(三百六十一)- 单纯形法

单纯形法是求解线性规划问题最常用、最有效的算法之一,关于单纯形法的说法正确的是 A.在线性规划问题中,只要存在相应的解,则一定可以在可行域的顶点中找到。 B.单纯形法的核心是根据一定的规则,一步步寻找可行域中的最优解。 C.对偶单纯形法是求解对偶问题的一种方法。 D.单纯形法计算精度高,并且是一种很经济的算法 数据分析认证考试介绍:点击进入 题目来源于CDA模拟题库 点击此处获取答案

诺基亚又被微软耍了一回

在塞班系统日渐式微和放弃对自己Meego系统的研发后,诺基亚几乎全身心投入到微软windows phone系统手机的研发,并对其寄予极大的厚望。然而,当wp7的手机出来没多久,微软就结结实实的砍了这位昔日的手机霸主一刀:新推出的wp8系统不能应用于现有的手机。本来被给予厚望的Lumia wp7系列手机的销售大受影响,Lumia900的价格也被迫有由99.99美元的两年合约价调低到49.99美元。

第四百四十一回 再谈flutter_native_splash包

文章目录 1. 知识回顾2. 使用方法3. 示例代码4. 经验与总结4.1 经验分享4.2 内容总结 我们在上一章回中介绍了"overlay_tooltip简介"相关的内容,本章回中将 再谈flutter_native_splash包.闲话休提,让我们一起Talk Flutter吧。 1. 知识回顾 我们在第四百一十一回介绍了flutter_native_splash包的

历时四年打造的纯电动超跑:我们去体验了一回前途K50

今年 6 月 30 日,前途汽车旗下首辆电动超跑前途 K50 在苏州的工厂正式量产下线。当时有很多人跑来问前途汽车董事长陆群:是不是可以卖车了?现在是不是可以预定了?陆群开玩笑说,「如果没开过这辆车,现在不接受预订。」 过去 4 年,无论是在北京车展或者上海车展,你会发在这家新造车公司从未缺席。每一次展示,意味着前途 K50 又进行了新的迭代。从 2014 年到 2018 年,前途汽车从核心

搞了半天blender整动画这么爽,骨骼重定向一回,动作就可以到处套用,和音频对轨也好使

我们搞到了运动数据(可能是bvh文件,也可能是fbx文件)之后,想要让某个静态的模型动起来。 我们假定用的是Tpose的模型(因为我这个bvh文件是Tpose用的,所以为了动作映射不出问题,优先整的这种模型),需要给它套上运动数据。 使用rokoko或者auto-rig-pro(arp)之类的插件将动作数据映射(remap/retarget)到模型的骨架上之后。 在blender的大纲视图里,对应

一起talk C栗子吧(第一百三十一回:C语言实例--C程序内存布局三)

各位看官们,大家好,上一回中咱们说的是C程序内存布局的例子,这一回咱们继续说该例子。闲话休提,言归正转。让我们一起talk C栗子吧! 看官们,关于C程序内存布局的例子,我们在前面的两个章回都介绍过了,这一回我们将对前面章回中的内容进行总结和提示。 内存布局总结 C程序的内存布局主要有四个分区:代码区,数据区(data和bss),堆区和栈区。可以使用readelf -S filenam

一起Talk Android吧(第一百三十一回:Android自定义View八)

各位看官们,大家好,上一回中咱们说的是Android中自定义View的例子,这一回咱们继续说该例子。闲话休提,言归正转。让我们一起Talk Android吧! 看官们,我们在前面章回中介绍了自定义View时需要重写的一些方法,同时还查看了系统自带View(LinearLayout)中的这些方 法,再接下来的章回中,我们将参考这些方法,自己动手去实现这些方法。 好了终于要自己动手了,是不是很兴奋

一起Talk Android吧(第一百八十一回:Android中的Handler机制十)

各位看官们大家好,上一回中咱们说的是Android中Handler机制的例子,这一回咱们继续说该例子。闲话休提,言归正转。让我们一起Talk Android吧! 看官们,我们在一章回中留下了一个问题,这一回中我们解答此问题。在解答问题前先了解一下Android中修改UI控件的规则:在Android中只能在主线程中修改UI控件。 制定此规则一则是为了避免子线程修改主线程中的UI造成阻塞,再则是为