cocos lua 創建替換圖片

轉:https://www.cnblogs.com/SkyflyBird/p/7809675.html

關於Sprite或ImageView 創建圖片或替換圖片,使用cocos 2dx 3.10 lua:

一,sprite相關

-- 通過指定的某張圖片創建

local sprite = cc.Sprite:create("**.png")

-- 通過創建紋理緩存來創建

local sprite = cc.Sprite:create()
local cache = cc.Director:getInstance():getTextureCache():addImage("**.png")
sprite:setTexture(cache)

或者

local sprite = cc.Sprite:create()
sprite:initWithFile("**.png")

-- 通過.plist來創建,將小的圖片通過TexturePacker製作生成紋理圖集,這樣有利於減少文件讀取次數,減少OpenGL ES 繪製次數,減少內存消耗

複製代碼
local plistName = "**.plist"

-- 判定指定的plist文件是否加載
local isLoad = cc.SpriteFrameCache:getInstance():isSpriteFramesWithFileLoaded(plistName)
if not isLoad then
  -- 加載指定的plist文件
  cc.SpriteFrameCache:getInstance():addSpriteFrames(plistName)
end

-- 根據紋理圖集中的某張圖片創建精靈
local sprite = cc.Sprite:createWithSpriteFrameName("**.png")
-- 根據紋理圖集中的某張圖片或幀緩存替換精靈
sprite:setSpriteFrame("***.png")
--
local frame = cc.SpriteFrameCache:getInstance():getSpriteFrame("***.png")
sprite:setSpriteFrame(frame)
複製代碼

 

一,ImageView相關

-- 通過指定圖片直接創建

local Image = cc.ImageView:create("**.png",ccui.TextureResType.plistType)

第二個參數默認爲:ccui.TextureResType.localType(或UI_TEX_TYPE_LOCAL)

-- 通過某張圖片進行替換
Image:loadTexture("**.png",ccui.TextureResType.plistType)

 

以上倘若有編寫不當之處,歡迎留言,以避免誤導其它人,感謝!






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章