网站建设资讯

NEWS

网站建设资讯

flutter首页,flutter flutter

Flutter 仿抖音效果 (二) 界面布局

Flutter 仿抖音效果 (一) 全屏点爱星

为东坡等地区用户提供了全套网页设计制作服务,及东坡网站建设行业解决方案。主营业务为成都做网站、成都网站建设、东坡网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

Flutter 仿抖音效果 (二) 界面布局

[Flutter 仿抖音效果 (三) 视频播放列表] ( )

项目地址: 持续效果更新

1.基本的布局是简单的,外层通过Stack作为根

2.左边点赞的控件组通过Align进行统一布局

3.顶部控件组通过Positioned进行布局,设置顶部距离,其实也可以用align,我们多使用几种来习惯flutter的布局

4.底部同样使用Positioned,设置底部距离

5.子页面的左右滑动使用PageView,一开始我们要从推荐开始左滑到关注,可以使用reverse属性,不需要更多额外的操作

1.pageController监听

刷新顶部的下划线时,我们一样使用StreamController刷新,这样效率比setstate高很多

2.歌曲名走马灯效果

这个效果看起来挺麻烦的其实实现起来超级的简单用最普通的ListView就能快速的实现

首页listview里面套入的是最简单的container+text

listview添加一个ScrollController做为滑动的控制

使用一个定时器,把listview滑到最大的位置之后,在滑回去

先通过scroController.position.maxScrollExtent获取最大位置,

然后通过scroController.animateTo进行滑动,因为我设置一次循环的时间是3000毫秒,所以滑过去和滑回来的时间各占一般 new Duration(milliseconds: (time * 0.5).toInt()),还有就是歌名没有大于最大宽度时候其实我们不需要进行滑动,所以判断maxScrollExtent是否大于0来确定是否进行滑动动画

Flutter(二)StatefulWidget基础组件

MaterialApp 是我们app开发中常用的符合MaterialApp Design设计理念的入口Widget。MaterialApp这个组件里面的参数比较多,而且一般在应用入口会用到,所以这里把它内部的所有参数都列出来了

基本用法:

可以看到我们在 App 的最外层直接使用了 MaterialApp ,可以指定App的名称( title ),App的主题样式( theme ),首页的组件( home ),路由跳转配置)( routes ),关于路由跳转我们在后面的章节中会介绍

Scaffold 实现了基本的 Material Design 布局结构, Scaffold 在英文中的解释为角手架,我们可以理解为楼体中的钢架结构,通过它可以构建一个页面

在Flutter应用开发中,我们可以将 Scaffold 理解为一个布局的容器。可以在这个容器中绘制我们的用户界面

下面是 MaterialApp + Scaffold 的组合的基本用法

AppBar 就是顶部的导航栏组件,支持自定义标题,左右两侧的工具栏按钮等

BottomNavigationBar 是底部的菜单栏组件

使用方法:

一般我们会定义一个全局变量如 _currentIndex 用于记录当前选中的下标。然后在 onTap 属性的回调方法中调用

setState(() { _currentIndex = index;}); 更新 _currentIndex 就可以实现底部菜单的切换。 BottomNavigationBar 一般会配合 BottomNavigationBarItem 一起使用(如下所示)

RefreshIndicator 是Flutter中的下拉刷新组件,一般配合 ListView 组件一起使用

Image 就类似于android中的 ImageView ,可以自定义图片显示的宽高

从网络中加载图片

从本地(File文件)加载图片

从本地资源加载图片

可以将byte数组加载成图片

TextField 就类似于android的 EditText

PageView 就类似于android中的 ViewPager

Flutter/IOS混和开发情况下,项目内首个Flutter页面导航无返回问题

在Flutter内部机制中,默认使用自动管理导航机制,该机制在Flutter与原生混和开发情况下,Flutter页面不一定作为项目的首页面,所以出现需要在首个Flutter页面使用导航返回的需求。

Flutter的AppBar中定义有属性:

该属性默认为YES,即默认为自动管理导航栏,该情况下其会在非第一个Flutter页面创建导航返回按钮,我们在AppBar中将其设置为false:

并且手动添加导航返回按钮:

完成


文章题目:flutter首页,flutter flutter
网页链接:http://njwzjz.com/article/dsdjcec.html