zoukankan      html  css  js  c++  java
  • AppCan学习笔记----关闭页面listview动态加载数据

    AppCan页面关闭

    AppCan 的页面是由两个HTML组成,如果要完全关闭的话需要在主HTML eg.index.html中关闭,关闭方法:appcan.window.close(-1);

    管道

    • AppCan中两个页面通过管道连接,并传递数据
    • appcan.window.publish(channelId,msg) 向指定通道发送消息
    • appcan.window.subscribe(channelId,callback) 订阅一个频道,如果有消息发给该频道,则会执行响应的回调如果是用超链接打开的页面收不到消息

    例子

    • 需要注意的是,要确保publish方法执行过即开通了一个管道才可以接收到信息
    //在..._content页面发送消息
    function send() {
                //发送消息
                appcan.window.publish('test', 'hello');
                alert("发送成功");
    
            }
    
    //在.. .html文件ready方法中打开管道
     appcan.ready(function() {
    
                appcan.window.subscribe('test', function(msg) {
                    if (msg == 'hello') {
                        closeMyself();
                    } else {
                        alert("test");
                    }
                });
    
    //执行获取正确信息后的方法
    function closeMyself() {
                alert("closeMyself调用");
                appcan.window.close(-1);
            }
    

    listview动态加载数据

    • appcan ---> 添加列表 ---->带图片的列表
    //自动生成
    appcan.ready(function() {
            });
    
            var lv = appcan.listview({
                selector : "#listview",
                type : "thinLine",
                hasIcon : false,
                hasAngle : true,
                hasSubTitle : true,
                multiLine : 1,
            });
            lv.set([{
                title : "临时数据",
                subTitle : "12:05",
                id : "1"
            }, {
                title : "临时数据",
                subTitle : "12:05",
                id : "2"
            }])
            lv.on("click", function(ele, obj, curEle) {
            })
    
    //从服务器获取数据
    function getData() {
                var url = "服务器地址" + "用户登录id";
                apcan.request.getJSON(url, function(data) {
                    //提前判断是否加载成功,现将data解析
                    showMenu(data) {
    
                    }
                }, 'json', function(err) {
                    alert(err);
                }, "get", "", false);
            }
    
    //将信息动态赋值给listview
    function showMenu(data) {
                var lv = appcan.listview({
                    selector : "#listview",
                    type : "thinLine",
                    hasIcon : false,
                    hasAngle : true,
                    hasSubTitle : true,
                    multiLine : 1,
                });
                var datalist = data.data;
                for(i=0;i<data.datalist.length;i++){
                    datalist[i].title = data.data[i].title;
                    datalist[i].describ = data.data[i].content;
                    datalist[i].subtit = data.data[i].uid;
                    
                    lv.set(datalist);
                    
                }
            }
    
  • 相关阅读:
    android中接口和抽象类的区别
    最靠谱的禁止ViewPager滑动方法
    Android Studio 自定义属性,命名空间
    代码设置Android EditText的相关问题。输入长度maxLength
    关于Android中,保留小数点后两位的方式
    Android的线程使用来更新UI----Thread、Handler、Looper、TimerTask等
    既然安卓免费,那 Google 是靠什么赚钱的?
    android viewconfiguration
    Android中实现为TextView添加多个可点击的文本
    Textview解析带图片的html示例
  • 原文地址:https://www.cnblogs.com/Singleorb/p/5315404.html
Copyright © 2011-2022 走看看