|
- --[[
- 子活动分享奖励界面
- --]]
-
- local ActivityShareView = class("ActivityShareView", cc.UIView)
-
- function ActivityShareView:ctor(mission)--活动类型 ,是否显示关闭按钮
- ActivityShareView.super.ctor(self)
-
- self.ui = loadUI("res/ui/ui_dating/ui_activity_share.ui")
- self:addChild(self.ui)
-
- self.mission = mission
-
- -- self.aType = activityType
- -- self.isShowCloseBtn = isShowCloseBtn
- self.lastClick = 0
- end
-
- function ActivityShareView:onEnter()
- ActivityShareView.super.onEnter(self)
-
- self.ui.Items.Button_share:registerClick(handler(self, self.onShare))
- -- self.ui.Items.Button_Close:registerClick(handler(self, self.onClickClose))
- -- if self.isShowCloseBtn then
- -- self.ui.Items.Button_Close:setVisible(true)
- -- else
- self.ui.Items.Button_Close:setVisible(false)
- -- end
- self.ui.Items.Layout_share:setVisible(false)
- --self.ui.Items.ImageView_ShareImage:setVisible(false)
-
- self:bindEvent(app, "onGetShareRewardResponse", handler(self, self.onGetShareRewardResponse))
-
- -- local activityData = app.php.activityData;
- -- if not activityData then
- -- return
- -- end
- -- self.attyData = app.php.activityData[""..self.aType]
-
- -- if not self._Timer then--定一个3秒的定时器,如果3秒内未获取到图片,自动关闭分享界面
- -- self._Timer = cc.Director:getInstance():getScheduler():scheduleScriptFunc(function()
- -- if not tolua.isnull(self) then
- -- self:removeFromParent()
- -- end
- -- end,3,false)
- -- end
-
- local ext = json.decode(self.mission.ext)
- local urlfile1, time1 = convertIconUrl(self.mission.pic)
- local urlfile2, time2 = convertIconUrl(ext.share_pic)
-
- local isneedReq = cc.UserDefault:getInstance():getBoolForKey("needRequestShareImage")
- --local imagePath1 = cc.FileUtils:getInstance():getWritablePath().."activityShare.png"--显示在活动页面上的图
- --local imagePath2 = cc.FileUtils:getInstance():getWritablePath().."activityShareOut.png"--分享到朋友圈的图
- self.fileName1 = getImageNameFromUrl(urlfile1)
- self.fileName2 = getImageNameFromUrl(urlfile2)
- local fullPath = cc.FileUtils:getInstance():getWritablePath()..self.fileName1;
- local isExist = cc.FileSystem:fileExists(fullPath)
- if isneedReq or (not isExist) then
- cc.UserDefault:getInstance():setBoolForKey("needRequestShareImage",false)
- getImageFromUrlWithTime(ext.share_pic, self.fileName2, nil, function()
- getImageFromUrlWithTime(self.mission.pic, self.fileName1, nil, function()
- self:updateView()
- end)
- end)
- else
- self:updateView()
- end
-
- end
-
- function ActivityShareView:updateView()
- if tolua.isnull(self) then
- return
- end
- -- if self._Timer then
- -- cc.Director:getInstance():getScheduler():unscheduleScriptEntry(self._Timer)
- -- self._Timer = nil
- -- end
-
- local texture = loadTextureFromFile(self.fileName1)
- if not texture then
- -- self:removeFromParent()
- return
- end
-
- self.ui.Items.ImageView_ShareImage:setTexture2(texture)
- self.ui.Items.Layout_share:setVisible(true)
- --self.ui.Items.ImageView_ShareImage:setVisible(true)
- end
-
- function ActivityShareView:onClickClose()
- playBtnEffect()
- self:removeFromParent()
- end
-
- function ActivityShareView:onShare()
- playBtnEffect()
- local timeNow = os.time();
- if timeNow - self.lastClick <= 5 then
- showTooltip("点击太过频繁,请稍后再试")
- return
- end
- self.lastClick = timeNow;
- if cc.Application:getInstance():getTargetPlatform() == cc.PLATFORM_OS_ANDROID then
- local imagePath = cc.FileUtils:getInstance():getWritablePath()..self.fileName2;
- --local imagePath = cc.FileUtils:getInstance():getWritablePath().."icon.png"
- local function requestGetReward()
- app.php:requestGetShareReward()
- end
-
- local info = {}
- info.scene = "friend"
- info.contentType = "image"
- info.image = imagePath
- info.imageWidth = 1000
- info.thumbWidth = 100
- app.plugin:shareGame(info,requestGetReward)
-
- else
- app.php:requestGetShareReward()
- end
-
- --app.php:requestGetShareReward()
- --self:onGetShareRewardResponse()
- end
-
- function ActivityShareView:onGetShareRewardResponse(result)
- if cc.Application:getInstance():getTargetPlatform() == cc.PLATFORM_OS_ANDROID then
- if result.data.flag == -1 then
- showTooltip("今日已领取过奖励!")
- else
- local addNum = result.data.add
- --显示获得房卡动画
- local view = import("luaScript.Views.Main.JiangLi"):new(addNum)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view, 200, true)
- end
- else
- local imagePath = cc.FileUtils:getInstance():getWritablePath()..self.fileName2;
- --local imagePath = cc.FileUtils:getInstance():getWritablePath().."icon.png"
- local function requestGetReward()
- --app.php:requestGetShareReward()
- end
- local info = {}
- info.scene = "friend"
- info.contentType = "image"
- info.image = imagePath
- info.imageWidth = 1000
- info.thumbWidth = 100
- app.plugin:shareGame(info,requestGetReward)
-
- if result.data.flag == -1 then
- showTooltip("今日已领取过奖励!")
- else
- self:runAction(cc.Sequence:create(cc.DelayTime:create(1.2),cc.CallFunc:create(function ()
- local addNum = result.data.add
- --显示获得房卡动画
- local view = import("luaScript.Views.Main.JiangLi"):new(addNum)
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view, 200, true)
- end)))
- end
- end
- end
-
- return ActivityShareView;
|