关于index底下切换的的组件,可以用ViewShower实现,详见:
do_ViewShower
(如图)
 
绑定数据:
do_ListData
 
里面可以上下滑动使用了两个东西:do_ListView 和do_ScrollView
ListView适合放上下一模一样的东西,但不支持编辑,所以如果要编辑就使用LinearLayout,另外ScrollView是比较简单的上下滑动的组件,因为它直接就是写多高就多长,不那么灵活,详见底下demo:
do_ListView
do_LinearLayout
do_ScrollView
(如图)[attach]295[/attach]
 
百度定位使用的组件详见底下demo:
do_BaiduLocation
[mw_shl_code=javascript,true]bdlocation.on("result",function(data, e){
    label_address.text = data.address;
    bdlocation.stop();
});
bdlocation.start();[/mw_shl_code]
滑动切换使用了do_segmentview和do_SlideView详见demo:
do_SlideView

[mw_shl_code=javascript,true]/***********************************************************/
//当segmentview的index变化时,读取
do_segmentview_1.on("indexChanged", function(index){
        if(index == this.index){
                return;
        }
    do_slideview_1.set({index: index});
    do_slideview_1.refreshItems({});
    changecolor(index);
});
/***********************************************************/
//slideview绑定数据
slide_listdata.addData([ 
        {template: 0},
    {template: 1},
    {template: 2}
]);
do_slideview_1.refreshItems();
/***********************************************************/
//当slideview的index变化时,读取
do_slideview_1.on("indexChanged", function(index){
    do_segmentview_1.set({index: index});
    changecolor(index);

});[/mw_shl_code]
上下刷新:
[mw_shl_code=javascript,true]listview.on("pull", function(data) {

/**
     * @此事件将会多次执行.
     * @state == 0 : pull动作开始
     * @state == 1 : pull动作持续中
     * @state == 2 : pull动作结束
     */
    if (data.state !== 2) return;
    this.rebound();
});
listview.on("push", function(data) {
    /**
     * @此事件将会多次执行.
     * @state == 0 : pull动作开始
     * @state == 1 : pull动作持续中
     * @state == 2 : pull动作结束
     */
    if (data.state !== 2) return;
    this.rebound();
});[/mw_shl_code]

添加定时器来改变广告:
组件do_Timer:
http://bbs.deviceone.net/forum.php?mod=viewthread&tid=135&extra=page%3D3
[mw_shl_code=javascript,true]var page = sm("do_Page");
var i=1,y=0;
var timer01 = mm("do_Timer");
timer01.delay = 0;
timer01.interval = 100;

var DURATION01 = 0;

timer01.on("tick", function(){
    if(DURATION01 >= 30){
        DURATION01 = 0;
        slideview.index=i%4;
        i++;
    }
    DURATION01++;
});
timer01.start();[/mw_shl_code]

9.21更新:
订阅界面的顶部图片和底下的logo点击可以进入新界面
其中顶部图片是slideview:
       在slideview的templates里的ui写点击事件打开新界面;然后用传送的data来判断第几个图片;
[mw_shl_code=javascript,true]app.openPage({source:"source://view/ding/slideview/sli_de.ui", data:"1", animationType:"", isFullScreen:false, keyboardMode:"default", scriptType:""}, function(data, e){});[/mw_shl_code]
底下的logo是grid_view:
[mw_shl_code=javascript,true] grid_view1.on("touch",function(data, e){                       //griview点击事件
//         nf.alert(_data[data]);
         app.openPage({source:"source://view/ding/ding_de.ui", data:data, animationType:"", isFullScreen:false, keyboardMode:"default", scriptType:""}, function(data, e){});
        });[/mw_shl_code]

再此附上git地址:https://github.com/do-project/zaker

JavaScript使用DeviceOne开发实战(五)仿ZAKER应用的更多相关文章

  1. JavaScript使用DeviceOne开发实战(三)仿微信应用

    这是一个系列的文档,长期目标是利用DeviceOne开发一些目前使用广泛的优质手机应用,我们会最大化的实现这些应用的每一个功能和细节,不只停留在简单的UI模仿和Demo阶段,而是一个基本可以使用的实际 ...

  2. JavaScript使用DeviceOne开发实战(一) 配置和起步

    2015 年 9 月 底,DeviceOne Release发布.至此,DeviceOne 基本完成了对多端的支持.基于 DeviceOne 可以: HTML5.Android.iOS.Windows ...

  3. JavaScript使用DeviceOne开发实战(四)仿优酷视频应用

    开发之前需要考虑系统的差异性,比如ios手机没有回退键,所以在开发时一定要考虑二级界面需要有回退键,否则ios的手机就会陷入到这个页面出不去了.安卓系统有回退键,针对这个情况需要要求用户在3秒钟之内连 ...

  4. JavaScript使用DeviceOne开发实战(二) 生成调试安装包

    生成调试安装包 首先需要说明的是,这个步骤并不是每次调试App都必须的,大部分情况生成一次调试安装包,安装到手机上之后就可以忽略整个这个步骤.因为调试安装包包含了很多原生组件,都是可以定制勾选的,如果 ...

  5. JavaScript使用DeviceOne开发实战(六)点墨真实案例

    qq群里的yan用户开发的App,基本完工大家可以看看 安装二维码是 QQ群:365443130

  6. [原创].NET 分布式架构开发实战五 Framework改进篇

    原文:[原创].NET 分布式架构开发实战五 Framework改进篇 .NET 分布式架构开发实战五 Framework改进篇 前言:本来打算这篇文章来写DAL的重构的,现在计划有点改变.之前的文章 ...

  7. 《JavaScript 设计模式与开发实战》第一部分(1、2、3章)笔记

    第1章:面向对象的JavaScript 动态类型和鸭子类型 编程语言按照数据类型大体可以分为两类: ① 静态类型语言:在编译时便已确定变量的类型. ② 动态类型语言:变量类型要到程序运行的时候,待变量 ...

  8. [原创].NET 业务框架开发实战之十 第一阶段总结,深入浅出,水到渠成(后篇)

    原文:[原创].NET 业务框架开发实战之十 第一阶段总结,深入浅出,水到渠成(后篇) .NET 业务框架开发实战之十 第一阶段总结,深入浅出,水到渠成(后篇) 前言:接着上篇来. 系列文章链接: [ ...

  9. [原创].NET 业务框架开发实战之九 Mapping属性原理和验证规则的实现策略

    原文:[原创].NET 业务框架开发实战之九 Mapping属性原理和验证规则的实现策略 .NET 业务框架开发实战之九 Mapping属性原理和验证规则的实现策略 前言:之前的讨论一直关注在怎么从D ...

随机推荐

  1. ue4 NewObject/StaticConstructObject_Internal/StaticAllocateObject/FObjectInitializer:对象创建和初始化

    UObject是一套很复杂的体系,之前读ue3代码时曾分析过其类型系统实现,主要是与UClass间的关系 现在转到ue4,发现那一块其实差不多,于是再重点备忘一下UObject本身的创建和初始化过程 ...

  2. 引用64位dll时候出现 未能加载文件或程序集“System.Data.SQLite”或它的某一个依赖项。试图加载格式不正确的程序。

    引用64位dll时候出现 未能加载文件或程序集“System.Data.SQLite”或它的某一个依赖项.试图加载格式不正确的程序. 需要在web.config增加配置 <startup use ...

  3. DDD领域驱动设计基本理论知识总结

    领域驱动设计之领域模型 加一个导航,关于如何设计聚合的详细思考,见这篇文章. 2004年Eric Evans 发表Domain-Driven Design –Tackling Complexity i ...

  4. MS SQL查看效率语句 与PLSQL中F5功能相同

    使用方法:打开SQL SERVER 查询分析器,输入以下语句: SET STATISTICS PROFILE ON SET STATISTICS IO ON SET STATISTICS TIME O ...

  5. 第一个c++程序

    #include <iostream> using namespace std; int main(int argc, const char * argv[]) { //cin接收键盘输入 ...

  6. 13.Xcode开发的快捷键

    1.文件 CMD + N: 新文件: CMD + SHIFT + N: 新项目: CMD + O: 打开: CMD + S: 保存: CMD + SHIFT + S: 另存为: CMD + W: 关闭 ...

  7. n+1 < n , are you sure?

    密码终于找回了,原来是我邮箱把改密链接的邮件当垃圾邮件了-- 回到正题,这是道面试题,原话大致是这样的: n+1<n成立吗?请说明. 当时我听到这个题后直觉是成立的,但是想不到怎么回事,后来别人 ...

  8. JS-Dom概念

    <!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content=&q ...

  9. php图片合成

    <?php//===================== 新建一个新的 GD 图像流并输出图像========================//header("Content-typ ...

  10. js创建对象的几种方式

    /** * 顺便重温一下对象的创建方式 * 代码简单说明问题就好 * 概念性的东西这里就不提了,只加上自己简单理解 */ /** * 工厂模式,就是将手动的创建细节封装在一个方法里, * return ...