大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
flutter_k_chart基本实现了火币里面各项指标线以及深度线,Flutter目前没有比较好的开源组件,就自己写了一个,声明式ui自定义起来有点怪怪的,但大致与android差不多,先上效果图
站在用户的角度思考问题,与客户深入沟通,找到昌江网站设计与昌江网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站建设、做网站、企业官网、英文网站、手机端网站、网站推广、域名与空间、虚拟空间、企业邮箱。业务覆盖昌江地区。
使用方式
GitHub地址:
后期会持续完善,欢迎指出问题以及star
在玩安卓上有款组件化开源app的项目,一款模仿 Eyepetizer | 开眼视频的 开源app,这款app设计风格特别喜欢的,比较简洁,美观,然后最近又在学flutter的知识,于是就写了一款flutter版本的开源短视频,效果也是听不错的,废话不多说,先上效果图。
先附上项目地址:
项目api会在后面的参考链接里,或者直接项目内查看。
项目地址:
更新:6/30 项目新增下拉刷新,上拉加载功能
kotlin版本开眼短视频开发中,敬请期待...
总结:在此感谢参考的伙伴的文章,写的也很好,然后我将这个项目改写成了flutter,当中也学习到了很多flutter相关的知识,后续还有继续巩固,不断学习。
参考链接(包含本项目的api)
众所周知,小程序是由HTML标签来开发原生组件,那么首先需要将HTML做解析,这里我们将HTML通过node脚本解析成JSON字符串,再用Dart来解析JSON,映射对应的标签到flutter的组件。这里先简单介绍实现的功能以及展示效果,后续再详细介绍。
为了高效解析,直接用flutter的组件名在HTML文件上开发
直接使用flutter的组件
模仿微信小程序的Api,cc对应是微信小程序的wx
以上HTML中的例子
《使用Flutter + V8/JsCore开发小程序引擎(二)》
《使用Flutter + V8/JsCore开发小程序引擎(三)》
这是领苗确认记录详情页需要展示给用户的内容,大家可以看到这个页面要承载很多的信息,要向下滚动一段很长的距离才能展示完,想要实现的效果是在页面的顶部有一个TabBar,用户可以通过点击TabBar进行锚点(jumpTo到指定位置),AppBar下的整个页面是可以自由滚动的,在滚动过程中AppBar始终固定在顶部,TabBar在第一次进入详情页的时候不显示,只有在向下滑动的时候会由透明渐变为不透明并固定在顶部,同时当页面滑动到TabBar锚点位置的时候TabBar会切换到对应的下标,也就是要实现TabBar和ScrollView联动的双向控制,Tabbar的切换可以控制页面的跳转,页面的滑动又可以反过来控制TabBar的切换,类似与京东、淘宝的商品详情页效果。
SliverAppBar基本已经达到了我们想要的效果,但在界面顶部会有块空白区域试了很多方法怎么都去不掉,最后看了SliverAppBar这个控件的源码发现是它自带的初始高度。
这个没法设置或消除,不可能直接去改源码,所以后来换了一种实现思路,舍弃了SliverAppBar这个控件,以Stack的形式将TabBar置于ScrollView之上也能达到我们想要的效果,那么问题来了,如何实现TabBar的滚动渐变?很容易想到Opacity透明度控件,通过滚动监听来控制TabBar透明度的改变,借助Notificaion可以完美实现我们的需求。
Notification是Flutter中一个重要的机制,在Widget树中,每一个节点都可以分发通知(Notification)与父(包括祖先)Widget通信,通知会沿着当前节点(context)向上传递,所有父节点都可以通过NotificationListener来监听自己关注的通知,Flutter中称这种通知由子向父的传递为“通知冒泡”(Notification Bubbling)。
Flutter中很多地方使用了通知,如可滚动(Scrollable) Widget中滑动时就会分发ScrollNotification,而Scrollbar正是通过监听ScrollNotification来确定滚动条位置的。除了ScrollNotification,Flutter中还有SizeChangedLayoutNotification、KeepAliveNotification 、LayoutChangedNotification等。
通过NotificationListener监听滚动事件和通过ScrollController有两个主要的不同:
通过改造后,目前这个组件的原型已经实现并且可以满足我们的需求,最后就是对该demo进行完善使其能够完美接入我们的业务,做到技术赋能业务。
在一个页面滚动区域不是很长的情况下不建议使用,只有当页面足够长的情况下使用这个组件效果会比较好,因为如果一个页面过短,点击TabBar最后一栏进行锚点时,页面最后一个子模块内容无法置顶,只会将页面最后的内容推到屏幕范围内,并且由于TabBar监听到的是滚动的位置,会导致TabBar无法切换到对应的下标,看上去会像个bug,其实是因为底部已经没有内容了。
这个组件本身并没有太大的技术难度,但是有一些比较细节的小逻辑得处理好,并且从中衍生出来的很多琐碎的小的知识点都可以进行拓展。 在组件开发的过程中遇到问题时不局限于控件本身的设计模式,转变开发思维去找寻一些比较新颖的解决方案可能会有意外的收获。同时技术不能脱离于业务,技术赋能业务才能创造价值。
Flutter教程全套 (全网独家)百度网盘免费资源在线学习
链接:
提取码: m9z8
Flutter教程全套 (全网独家)
第一套:Flutter 携程17章全-整理好
第五套:Flutter高仿谷歌翻译项目课程
第四套:两小时掌握Flutter移动App开发视频
第三套:flutter入门到精通全套
第七套:Flutter小实战20个
第六套:仿直聘boss的flutter完整教程
第九套:Flutter跨平台开发
第二套:flutter移动电商实战-技术胖
第八套:Flutter基础教程(基础不好的优先看)
24Flutter的打包.mp4
23静态资源和项目图片的处理.mp4
22页面跳转并返回数据_.mp4
21导航的参数传递和接受-2_.mp4
20导航的参数传递和接受-1.mp4