摘要: 基于AppCan移动平台开发APP,许多开发者会遇到多浮动窗口实现的问题,这里AppCan移动平台的小编为你归纳整理了4种常用的多浮动窗口实现方法,供移动app开发者们参考。 AppCan移动平台多浮动窗口实现方法: ...
基于AppCan移动平台开发APP,许多开发者会遇到多浮动窗口实现的问题,这里AppCan移动平台的小编为你归纳整理了4种常用的多浮动窗口实现方法,供移动app开发者们参考。 AppCan移动平台多浮动窗口实现方法: 第一种 appcan.frame.open appcan.frame.open(id,url,left,top,name,index,change,extraInfo) 打开一个浮动窗口 说明:再次封装appcan.window.openPopover常用参数(简化版)。 url:浮动窗口要加载的页面的地址,如果url是一个数组则打开多页面浮动窗口。 这种方法较为简单,推荐使用。 应用场景: 1. tab切换,直接在IDE中插入控件,一键创建选项卡。 页面自动加载选项卡代码,body和script标签已经把所需代码创建好。 Script标签已自动加载appcan.tab和tabview.on方法,body标签里已自动加载 2.tab+滑动效果 利用appcan.tab(第1步)+appcan.frame.open方法(详见该方法示例) 模拟器/实时预览效果:有内容,可手动切换窗口 真机效果:有内容,可手动切换窗口,可滑动切换窗口 第二种 使用AppCan原生uexWindow代码 uexWindow.openMultiPopover 打开多页面浮动窗口 说明:在当前window打开一个多页面浮动窗口,页面之间滑动切换,设置是否支持滑动参照setMultilPopoverFlippingEnbaled 。 (http://newdocx.appcan.cn/newdocx/docx?type=1390_1249#setMultilPopoverFlippingEnbaled 设置控件是否响应滑动事件) 补充:这种方法使用原生uexWindow代码实现多浮动窗口,而其他3种方法是基于AppCan引擎原生接口封装。 第三种appcan.window.openMultiPopover appcan.window.openMultiPopover(popName,content,dataType, left, top, width, height,change, fontSize, flag, indexSelected,extraInfo) 打开多页面浮动窗口 说明:封装uexWindow.openMultiPopover原生接口。 第四种appcan.frame.openMulti appcan.frame.openMulti(popName,content,dataType, left, top, width, height, fontSize, flag, indexSelected) 打开多页面浮动窗口 说明:再次封装appcan.window. openMultiPopover 常用参数(简化版)。 区别:无change参数。 Tips: 1.实现多窗口间禁止滑动: (1)在以上4种方式的基础上,调用 uexWindow.setMultilPopoverFlippingEnbaled 。 uexWindow.setMultilPopoverFlippingEnbaled(1); //设置多浮动窗口间禁止滑动,enable参数为1,该接口需要在要禁止滑动的浮动窗口即Multipopover的子页面中调用; (2)还有另一种方法可以实现,推荐参考IDE中模板index.html首页使用的方法。
![]() 2. 如果是测试时无法显示content内容,请注意dataType参数:需要传入0,如果为1且content为路径,则不显示内容,具体参考dataType参数说明。 窗口载入的数据类型 0: url方式载入 1: html内容方式载入 2: 既有url方式, 又有html内容方式 3.appcan.window.openMultiPopover 方法中参数dataType 为2,如果内容不显示,原因可能是传入的content为路径url方式,默认为传入0即可。 附: 下载case,请参照文档: http://newdocx.appcan.cn/newdocx/docx?type=1390_1249#openMultiPopover 打开多页面浮动窗口 以上为AppCan移动平台应用开发时常用的4种多浮动窗口实现方法,详细使用说明和相关示例,在AppCan官网文档中心都有相关介绍。各种开发应用问题AppCan论坛也可以帮你解答哦。 |
2014-05-28
2017-12-07
2017-08-08
2017-06-03
2018-01-22