APICloud使用中的常见问题

1.调用了api.openSlidLayout之后APP无法关闭的问题

需要在Slide页面中执行下列方法

// 拦截回退键
api.addEventListener({
  name: 'keyback'
}, function(ret, err){
  api.closeWidget({
    id: 'A6918171343634',
    retData: {name:'closeWidget'}
  });
});

2.有顶部标题栏的情况下怎么将顶部下拉刷新组件显示在标题栏下方

把标题栏下面需要刷新加载的列表内容放到一个新的页面里,通过openFrame打开

            var header = $api.byId('topbar');
            //适配iOS7+,Android4.4+状态栏沉浸式效果,详见config文档statusBarAppearance字段
            $api.fixStatusBar(header);
            //动态计算header的高度,因iOS7+和Android4.4+上支持沉浸式效果,
            //因此header的实际高度可能为css样式中声明的44px加上设备状态栏高度
            //其中,IOS状态栏高度为20px,Android为25px
            var headerH = $api.offset(header).h;
            //frame的高度为当前window高度减去header和footer的高度
            var frameH = api.winHeight - headerH;
            api.openFrame({
                name : 'message_list',
                url : './message_list.html',
                rect : {
                    x : 0,
                    y : headerH,
                    w : api.winWidth,
                    h : frameH
                },
                pageParam : {
                    
                },
                bounces : true,
                bgColor : 'rgba(0,0,0,0)',
                vScrollBarEnabled : true,
                hScrollBarEnabled : true
            });

3.需要在其他页面执行脚本

通过execScript方法,可以在指定的 window 或者 frame 中执行脚本

var jsfun = 'funcSetCity("'+ret.cityInfo.city+'");';
  api.execScript({
    name : 'booking',
    frameName: 'booking_1',
    script : jsfun
});

function funcSetCity(city){
  $('#id_UICityList').html('中国'+city);
}

4.顶部状态栏和APP页面不重合,APP最上部分从顶部状态栏下面开始

通过在config.xml中设置


你可能感兴趣的:(APICloud使用中的常见问题)