加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

cocos2d-lua 左右移动广播条 跑马灯效果

发布时间:2020-12-14 21:20:19 所属栏目:百科 来源:网络整理
导读:直接上代码 local braodWidth = 150 --跑马灯的长度 local label = cc.Label:createWithSystemFont("关于--------------hahhahdasdfwetf,asdlfawefasf","Microsoft YaHei",25) :setPosition(cc.p(0,0)) :setAnchorPoint(cc.p(0,0)) local labelWidth = label

直接上代码

local braodWidth = 150 --跑马灯的长度 
    local label = cc.Label:createWithSystemFont("关于--------------hahhahdasdfwetf,asdlfawefasf","Microsoft YaHei",25) 
     :setPosition(cc.p(0,0)) 
     :setAnchorPoint(cc.p(0,0)) 
    local labelWidth = label:getContentSize().width 
    local time = 3 -- 这里可以根据label多长动态计算时间 
    local scrollViewLayer = cc.Layer:create():setPosition(cc.p(0,0)) 
    scrollViewLayer:setContentSize(label:getContentSize()) 


    local scrollView1 = cc.ScrollView:create() 
    if nil ~= scrollView1 then 
        scrollView1:setViewSize(cc.size(braodWidth,100)) 
        scrollView1:setPosition(cc.p(display.cx,display.cy)) 
        scrollView1:setDirection(cc.SCROLLVIEW_DIRECTION_NONE ) 
        scrollView1:setClippingToBounds(true) 
        scrollView1:setBounceable(true)
         scrollView1:setTouchEnabled(false) 
    end 
    scrollView1:addChild(label) 
    self:addChild(scrollView1) 


    if nil ~= scrollViewLayer_ then 
        scrollView1:setContainer(scrollViewLayer) 
        scrollView1:updateInset() 
    end 


    if labelWidth > braodWidth  then 
     local leftAction = cc.MoveBy:create(time,cc.p(braodWidth -labelWidth,0)) 
     local rightAction = cc.MoveBy:create(time,cc.p(labelWidth - braodWidth,0)) 
     local seqAction = cc.Sequence:create(leftAction,rightAction) 
     label:runAction(cc.RepeatForever:create(seqAction)) 
    end 

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读