码迷,mamicode.com
首页 > 其他好文 > 详细

9-15【实战应用】底部卡片实现-2

时间:2020-01-18 21:11:14      阅读:103      评论:0      收藏:0      [点我收藏+]

标签:变量   组件   参数   运行   分割   代码   data   contex   数据   

设置child要显示的文字
技术图片

把创建好的卡片都添加进去

技术图片

首页调用

上面定义变量
技术图片
loadData的时候对数据进行初始化
技术图片
调用,并传入model
技术图片
 

运行测试

并没有显示任何东西
技术图片
并抛出了一些异常
技术图片
SalesBox布局的约束有问题
技术图片
因为代码是拿着之前subNav的代码改的,所以有些代码的地方需要修改。例如这的Expaned要删除掉。
技术图片
图片分为这种大图和小图的形式,无论大图还是小图,宽度都占屏幕的二分之一。小图的高度占大图的2分之一。
技术图片
所以我们要根据图片的大小来控制它的宽和高

彩蛋

获取屏幕的宽度。获取到了宽度除以2再减去5 ,这个5是减去的padding
技术图片

_item方法再加一个参数,要知道它是不是大图
技术图片
如果是大图就是129,高度,小图的话就是80的高度。
技术图片
因为图片需要设置分割线,所以外层需要前天一个Container
技术图片
设置装饰器
技术图片
上面设置BorderSide。宽度和颜色
技术图片
再来设置底边,如果是最后一个我们就设置,不是就不设置。
技术图片
设置图片显示方式,撑满
技术图片
这里把big参数传进去
技术图片

再次运行测试

右边布局超出了边界的情况。第二行本来应该是小图,但是显示的高度还不一样。
技术图片

修改代码

首先来看这里的小图为什么会有问题
技术图片
是否是大图的参数传错了。这里应该用false
技术图片
这行小图就解决了。但是右边还是溢出
技术图片
溢出很有可能是图片的宽度出现了问题。也就是我们在算图片宽度的时候。因为我们左右边距的存在。
我们在首页的这里设置了左右的边距。
技术图片

所以我们最后减去左右的边距,再减去中间的线。
技术图片
在看效果 就好了。
技术图片

回顾

最左边放了一个网络的图片
技术图片
右边用container设置了圆角脚边的背景
技术图片
里面放了这样一段文字
技术图片
点击文字可以跳转到对应的活动页
技术图片

彩蛋

就是如何获取屏幕的宽度
通过MediaQuery.of(context).size.width获取到宽度。
技术图片
所有组件的高度加起来不能超过屏幕的宽度,不然就会弹出警告。
 

结束

????

9-15【实战应用】底部卡片实现-2

标签:变量   组件   参数   运行   分割   代码   data   contex   数据   

原文地址:https://www.cnblogs.com/wangjunwei/p/12210110.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!