文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

MUI进行APP混合开发如何实现下拉刷新和上拉加载

2023-05-30 16:57

关注

小编给大家分享一下MUI进行APP混合开发如何实现下拉刷新和上拉加载,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

首先,我们的环境是使用HBuilder通过MUI开发APP,这种混合开发适合安卓和苹果两个平台

为实现下拉刷新功能,大多H5框架都是通过DIV模拟下拉回弹动画,在低端android手机上,DIV动画经常出现卡顿现象(特别是图文列表的情况); 通过双webview解决这个DIV的拖动流畅度问题;拖动时,拖动的不是div,而是一个完整的webview(子webview),回弹动画使用原生动画;在iOS平台,H5的动画已经比较流畅,故依然使用H5方案。两个平台实现虽有差异,但经过封装,可使用一套代码实现下拉刷新。

创建子页面,因为拖动的其实是个子页面的整体

mui.init({ subpages:[{ url:pullrefresh-subpage-url,//下拉刷新内容页面地址 id:pullrefresh-subpage-id,//内容页面标志 styles:{ top:subpage-top-position,//内容页面顶部位置,需根据实际页面布局计算,若使用标准mui导航,顶部默认为48px; .....//其它参数定义  } }] });

内容页面需按照如下DOM结构构建

<!--下拉刷新容器--><div id="pullrefresh" class="mui-content mui-scroll-wrapper">  <div class="mui-scroll">    <!--数据列表-->    <ul class="mui-table-view mui-table-view-chevron">      <li class="mui-table-view-cell">1</li>    </ul>  </div></div> 

通过mui.init方法中pullRefresh参数配置下拉刷新各项参数

mui.init({ pullRefresh : { container:"#pullrefresh",//下拉刷新容器标识,querySelector能定位的css选择器均可,比如:id、.class等 down : {contentdown : "下拉可以刷新",//可选,在下拉可刷新状态时,下拉刷新控件上显示的内容 contentover : "释放立即刷新",//可选,在释放可刷新状态时,下拉刷新控件上显示的内容 contentrefresh : "正在刷新...",//可选,正在刷新状态时,下拉刷新控件上显示的内容 callback : fn //必选,刷新函数,根据具体业务来编写,比如通过ajax从服务器获取新数据; } } });

设置执行函数

function fn() { //业务逻辑代码,比如通过ajax从服务器获取新数据; ...... //注意,加载完新数据后,必须执行如下代码,注意:若为ajax请求,则需将如下代码放置在处理完ajax响应数据之后   mui('#pullrefresh').pullRefresh().endPulldownToRefresh(); //这行代码会隐藏掉 正在加载... 容器 }

以上就是关于下拉刷新的MUI写法以及相关的function 函数,下面来看看下拉加载:

第一步,第二步 和下拉刷新的一样

通过mui.init方法中pullRefresh参数配置下拉刷新各项参数

mui.init({   pullRefresh : {     container:"#pullrefresh",//待刷新区域标识,querySelector能定位的css选择器均可,比如:id、.class等     up : {       contentrefresh : "正在加载...",//可选,正在加载状态时,上拉加载控件上显示的内容       contentnomore:'没有更多数据了',//可选,请求完毕若没有更多数据时显示的提醒内容;       callback : fn //必选,刷新函数,根据具体业务来编写,比如通过ajax从服务器获取新数据;     }   } });

设置执行函数

function fn() {   //业务逻辑代码,比如通过ajax从服务器获取新数据; ...... //注意,加载完新数据后,必须执行如下代码,true表示没有更多数据了,  两个注意事项: //1、若为ajax请求,则需将如下代码放置在处理完ajax响应数据之后 //  2、注意this的作用域,若存在匿名函数,需将this复制后使用     var _this = this;     _this.endPullupToRefresh(true|false); }

看完了这篇文章,相信你对“MUI进行APP混合开发如何实现下拉刷新和上拉加载”有了一定的了解,如果想了解更多相关知识,欢迎关注编程网行业资讯频道,感谢各位的阅读!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯