lua滾動文字效果

2022-07-10 09:45:12 字數 2179 閱讀 3917

基本的思想都是建立乙個clippingnode,將要擷取的節點新增到clippingnode中,節點加上action即可。

下面是左右滾動的**,如果是上下滾動,更簡單了,只需修改y座標即可,都不用動態去計算時間。

--

獲取寬字元的寬度

function

widewordwidth(fontname, fontsize)

local key =generatekey(fontname, fontsize)

if mwidewordwidth[key] == nil

then

local str ="

abcdefghigklmnopqrstuvwxyz1234567890

"mwidewordwidth[key] = cc.labelttf:create(str, fontname, fontsize):getcontentsize().width / (string.len(str) / 3

)

endreturn

mwidewordwidth[key]

end--

生成key

function

generatekey(fontname, fontsize)

return

string.format("

%s%d

", fontname, fontsize)

end--

1 建立剪裁區

self.m_pcliprect = cc.rect(0, display.cy, display.width * 0.2, display.height * 0.2

)self.m_pclipnode =display.newclippingregionnode(self.m_pcliprect):addto(self)

--2 建立文字區域

self.msgcontent =cc.ui.uilabel.new()

:align(display.center_left, self.m_pcliprect.width + self.m_pcliprect.x, self.m_pcliprect.y + display.height * 0.2 * 0.5

):addto(self.m_pclipnode)

--3 滾動文字的長度

local textw =math.round( self.msgcontent:getcontentsize().width)

--4 移動距離

local ndistance = math.round( self.m_pcliprect.width) +textw

--5 移動所需時間

local speed = 2

--一秒移動多少個文字的距離

local ntime = math.floor(ndistance/widewordwidth(font_name, zysize.scale(26))/speed)

--6 動作

local tarfinsh = function

()

if self.msgcontent ~= nil

then

self.msgcontent:removeself()

self.msgcontent = nil

endend

local paction = cc.moveby:create(ntime, cc.p(-self.m_pcliprect.width, 0

))local pcallback =cc.callfunc:create(tarfinsh)

local rep =cc.sequence:create(paction, pcallback)

self.msgcontent:runaction(rep)

上下滾動動作部分**

local pactionshow = cc.moveto:create(0.5, cc.p(display.cx, self.m_pcliprect.y + self.m_pcliprect.height * 0.5

))local pactionstay = cc.delaytime:create(2)))

local pcallback =cc.callfunc:create(tarfinsh)

self.msgcontent:runaction(rep)

跑馬燈效果 文字上下滾動效果

void vieddidload裡面 void change陣列中的內容僅供測試用,具體內容可以通過後台伺服器獲取或者寫死 資料條數可以改變,我寫的是3條 if a 2 3 0 if a 3 3 0 類似下圖效果,文字滾動,左邊還有個小喇叭 動態更換可以使用uiimageview 自帶的方法進行設定...

jquery單行文字向上滾動效果

jquery單行文字向上滾動效果示例 jquery實現的單行文字向上滾動效果,看看間斷滾動文字 指令碼學堂 提供。infolist infolist ul infolist ul li infocontent var interval 1000 兩次滾動之間的時間間隔 var stepsize 26...

title標籤的怎麼實現文字滾動效果

在我實現qq 官網的時候,遇到了這樣的問題,就是title標籤中文字過長時,如何實現文字的滾動效果呢?別慌,看下面的 解析 我在動態的設定title標籤中的內容,可以將text 中的內容看做是string console.log console.log head title text split 將...