--翻页滚动效果
local function fnScrollViewScrolling( sender,eventType)
    -- body
    if eventType == 10 then
        local bposX = sender:getPercentage()*100
        _bPosX = bposX
    end
    if not _bPosX then
        return
    end
    print("-------bposX=",_bPosX)
    if ccui.ScrollviewEventType.scrolling == eventType or eventType == 9 then
        _IsRolling = true    
    elseif eventType == 12 then
        local edposX = sender:getPercentage()*100
        local dispox = edposX - _bPosX
        print("--------dispox=",dispox)
        if dispox < 0 then
            _currPercent = _currPercent - _addPercent
            if _currPercent >= 100 then
                _currPercent = 100
            end
        elseif dispox > 0 then
            _currPercent = _currPercent + _addPercent
            if _currPercent <= 0 then
                _currPercent = 0
            end
        end    
        sender:scrollToPercentVertical(_currPercent,0.1,false)            
        print("--------_currPercent=,_addPercent=",_currPercent,_addPercent)
        _IsRolling = false
    end
end
--绘制商店列表数据
function shopItemList( pBg,tItem )
    -- body
    require "src/libs/LuaListView"
    local itemList = pBg:getChildByTag(999)
    if not itemList then
        itemList = LuaListView:create()
        itemList:setBounceEnabled(true)
        itemList:setSize(cc.size(775, 318))
        itemList:setPosition(387.5,159+10)--230
        itemList:setAnchorPoint(cc.p(0.5,0.5))
        itemList:setDirection(ccui.ScrollViewDir.vertical)
        itemList:addEventListenerListView(fnScrollViewScrolling)
        itemList:setTag(999)
        pBg:addChild(itemList)
    else
        itemList:removeAllItems()
        _t_item = {}
    end
    local point_y = 52
    local num = math.ceil(#tItem/2)
    local addLayNum = math.mod(num,3)--当不够整页的话根据差别的个数添加空白条目实现上下整体翻页效果
    print("-----------------num=,addLayNum=",num,addLayNum)
    local layoutSize = cc.size(775,106)
    for i=1,num do
        local dLayout = ccui.Layout:create()
        dLayout:setSize(layoutSize)

if tItem[2*i-1] then
            local itemInfo1 = drawShopItemInfo(tItem[2*i -1],2*i -1)
            itemInfo1:setPosition(194,point_y) --67
            dLayout:addChild(itemInfo1)
        end
        if tItem[2*i] then
            local itemInfo2 = drawShopItemInfo(tItem[2*i],2*i)
            itemInfo2:setPosition(582,point_y)
            dLayout:addChild(itemInfo2)
        end
        itemList:pushBackCustomItem(dLayout)
    end
    if addLayNum ~= 0 then
        local disNum = 3- addLayNum
        for i=1,disNum do
            local dLayout = ccui.Layout:create()
            dLayout:setSize(layoutSize)
            itemList:pushBackCustomItem(dLayout)
        end
    end
    local height = itemList:getInnerContainer():getContentSize().height-318
    print("itemList:getInnerContainer():getContentSize().height=",itemList:getInnerContainer():getContentSize().height)
    _addPercent=(318/height)*(-100)
end

采用cocos2d-x lua 的listview 实现pageview的翻页效果之上下翻页效果的更多相关文章

  1. cocos2d-x lua 使用ListView

    cocos2d-x lua 使用ListView version: cocos2d-x 3.6 本文主要讲述:使用Cocos Studio创建ListView,和列表项的模板,代码中通过模板创建列表的 ...

  2. 采用cocos2d-x lua 制作数字滚动效果样例

    require "Cocos2d"require "Cocos2dConstants"local testscene = class("testsce ...

  3. lua 创建listview

    只要是新的聊天对象就创建一个新的listview local name = tolua.cast(UIHelper:seekWidgetByName(self.nameItem, "name ...

  4. 它们的定义ListView,实现Item除去滑动和滑出菜单效果

    这个程序是基于变化从网上开源项目,详情货源忘记.懒得去搜索,.假设有不合适的地方.请与我联系作者.我会及时回复和处理! 序中主要包括两个ListView,一个是实现側滑删除.一个是側滑出菜单,代码中的 ...

  5. Cocos Creator 获取当前 Pageview 翻页到第几页的事件索引

    新建一个js,叫做 pageAction写一个方法 pageViewClick:function(event,coustom){ var node = event.node; this.pageInd ...

  6. linux服务器开发一 基础

    注:本文仅限交流使用,请务用于商业用途,否则后果自负! Linux 1.Linux介绍 Linux是类Unix计算机操作系统的统称. Linux操作系统的内核的名字也是“Linux”. Linux这个 ...

  7. IOS开发-属性动画和关键帧动画的使用

    CAMediaTiming是一个协议(protocol),CAAnimation是所有动画类的父类,但是它不能直接使用,应该使用它的子类. 继承关系: CoreAnmiation 核心动画 简写CA ...

  8. 从零开始学习PYTHON3讲义(八)列表类型跟冒泡排序

    <从零开始PYTHON3>第八讲 ​前面我们见过了不少的小程序,也见过了不少不同类型的变量使用的方法.但目前我们涉及到的,还都是单个的变量和单个的立即数.以变量来说,目前我们见到的,基本都 ...

  9. Linux 文件/目录操作详解

    目录 Linux 文件/目录操作详解 初识Linux 一.文件/目录显示命令 ls 二.目录创建命令 mkdir 三.目录转移命令 cd 四.当前目录显示命令 pwd 五.文件处理命令 rmdir 六 ...

随机推荐

  1. oracleXE(oracle学习版)在windows的安装配置

    oracleXE其实安装基本就是一路下一步. 在安装前记得先把tomcat打开,不然oracleXE会占用8080端口且安装过程无法更改端口. 如果需要远程连接此oracle XE的话,要关闭这台电脑 ...

  2. C#知识点记录

    用于记录C#知识要点. 参考:CLR via C#.C#并发编程.MSDN.百度 记录方式:读每本书,先看一遍,然后第二遍的时候,写笔记. CLR:公共语言运行时(Common Language Ru ...

  3. css定位

    文档流 所谓的文档流,指的是元素排版布局过程中,元素会自动从左往右,从上往下的流式排列.并最终窗体自上而下分成一行行, 并在每行中按从左至右的顺序排放元素.脱离文档流即是元素打乱了这个排列,或是从排版 ...

  4. 纯JS判断各种浏览器类型及版本.

    IE11或者非IE if (!document.all) { alert('IE11+ or not IE'); } IE10 if (document.all && document ...

  5. [转载]El Capitan 中 SIP 介绍

    这两天大家纷纷将 OS X 系统升级到了 El Capitan,然后发现,一些注入的工具无法使用了,某些系统目录无法使用了,第三方未签名的 kext 无法加载了,问题一堆堆的.这是因为,Mac OS ...

  6. PHP基础之PDO

    简介 PDO(PHP Data Object)是指PHP数据对象,它定义了一个轻量级的一致接口来统一操作各种数据库.PDO提供了一个数据访问抽象层,这意味着,不管使用哪种数据库,都可以用相同的函数(方 ...

  7. 使用vlc播放器播放rtsp流视频

    可参考: 使用vlc播放器做rtsp服务器 web网页中使用vlc插件播放相机rtsp流视频 使用vlc进行二次开发做自己的播放器 首先需要安装vlc播放器,下载及安装步骤略 使用vlc播放器播放rt ...

  8. Linux 命令

    Linux 常用命令 su root  切换root用户 touch /etc/www/html/1.txt  创建文件 mkdir /usr/local/apache2   建立文件夹 rm -rf ...

  9. Web API系列(二)接口安全和参数校验

    以前简单介绍过web api 的设计,但是还是有很多朋友问我,如何合理的设计和实现web api.比如,接口安全,异常处理,统一数据返回等问题.所以有必要系统的总结总结 web api 的设计和实现. ...

  10. 初识virtual memory

    一.先谈几个重要的东西 virtual memory是一个抽象概念,书上的原文是"an abstraction of main memory known as virtual memory& ...