self.imgFJ = cc.Sprite:create("#fj.png")
self.imgFJ:setAnchorPoint(0,1)
self.imgFJ:setPosition(self.winSize.width*0.71, self.winSize.height*0.95)
local imgX = self.imgFJ:getPositionX()
local imgY = self.imgFJ:getPositionY()
local size = self.imgFJ:getContentSize()
-- local layer = cc.LayerColor:create({ r = 30, g = 30, b = 30, a = 180 }, self.winSize.width, self.winSize.height)
layer = cc.Layer:create()
local function touchLayerCallFunc(eventType, x, y)
if event == "began" then
-- print("======000========"..eventType)
-- print("======111========"..x)
-- print("======222========"..y)
if x >= imgX and x <= imgX + size.width and
y <= imgY and y >= imgY - size.height then -- 点击在layer的imgFJ上时吞并触摸
print("吞并触摸")
return true
end
end
print("不吞并触摸")
return false
end
layer:registerScriptTouchHandler(touchLayerCallFunc)
layer:setTouchEnabled(true)
layer:addChild(self.imgFJ)
self:addChild(layer)
遮罩层上高亮显示部分区域
-- 遮罩层上剪切高亮圆形
function TipsWindow:HighLightInColoerLayer(pos)
-- 遮罩层上剪切高亮圆形,开始
self.colorLayer:hide()
self.node = cc.Node:create()
self.clip = cc.ClippingNode:create(self.node)
self.clip:setInverted(true)
self.clip:setAlphaThreshold(0)
self:addChild(self.clip)
self.blackLayer = cc.LayerColor:create(cc.c4b(0,0,0,150),display.width,display.height)
self.clip:addChild(self.blackLayer)
local glNode = cc.GLNode:create()
glNode:setContentSize(cc.size(120, 120))
glNode:setAnchorPoint(cc.p(0.5, 0.5))
local function primitivesDraw()
gl.lineWidth(2)
cc.DrawPrimitives.drawColor4B(0, 0, 0, 1)
cc.DrawPrimitives.drawSolidCircle(pos, 70, 0, 50, 1,1)
end
glNode:registerScriptDrawHandler(primitivesDraw)
self.node:addChild(glNode)
self.glNode = glNode
-- 遮罩层上剪切高亮圆形,结束
end