|
|
- ChildRankView = ChildRankView or BaseClass(BaseView)
- local ChildRankView = ChildRankView
-
- function ChildRankView:__init()
- self.base_file = "child"
- self.layout_file = "ChildRankView"
- self.layer_name = "UI"
- self.destroy_imm = true
- self.use_background = true
- self.change_scene_close = true
- self.append_to_ctl_queue = false --是否要添加进界面堆栈
- self.hide_maincancas = true --全屏界面需要放开隐藏主UI
- self.blur_activity_bg = true
-
- self.model = ChildModel:GetInstance()
- self.rank_item_list = {}
- self.rank_reward_item_list = {}
- self.load_callback = function ()
- self:LoadSuccess()
- self:AddEvent()
- end
- self.open_callback = function ( )
- --self:UpdateView()
- end
- self.destroy_callback = function ( )
- self:DestroySuccess()
- end
- end
-
- function ChildNiceRecordView:Open(data,callBack)
- self.data = data
- self.callBack = callBack
- BaseView.Open(self)
- end
- function ChildRankView:LoadSuccess()
- local nodes = {
- "bg:img",
- "ScrollView",
- "ScrollView/Viewport/Content",
- "bg/closeBtn:obj",
- "right/ScrollView/Viewport/Content_reward",
- "none:obj",
- "myRank:obj",
- --"myRank/txt_playerName:tmp",
- "myRank/txt_childrName:tmp",
- "myRank/txt_niceNum:tmp",
- "myRank/txt_fight_num:tmp",
- "myRank/txt_no_rank:obj:tmp",
- -- "myRank/img_rank:obj:img",
- -- "myRank/txt_no_rank_none:obj",
- "myRank/role_icon",
- "con_money",
- --"myRank/vip_icon",
- "img_tip:tmp",
- "myRank/name_con/vip:obj:img", "myRank/name_con/name:tmp", "myRank/name_con/sex:obj:img",
- "helpBtn:obj",
- ------------------
- "myRank/btn_get/lb_btn_get:tmp",
- "myRank/btn_get:obj:img",
- "myRank/btn_get/btn_get_red:obj",
- "myRank/lb_last_day_rank:tmp",
- }
- self:GetChildren(nodes)
- self.lb_btn_get_tmp.text = "领取排名奖励"
- -- lua_resM:setOutsideImageSprite(self, self.bg_img, GameResPath.GetViewBigBg("child_rank_view_bg"),false)
- local closeWin_callback = function()
- self:Close()
- end
- self.tabWindowComponent = UITabWindow.New(self.transform, {}, nil, closeWin_callback,self.background_wnd, nil, UITabWindow.SizeSmallNoTab, false,nil,true)
- self.tabWindowComponent:SetBackgroundRes("child_rank_view_bg_945_533")
- self.tabWindowComponent:SetTitleText("点赞排行")
-
- if not self.money_view then
- self.money_view = UIMoneyView.New(self.con_money)
- end
- self.money_view:SetPosition(0,0)
- self.money_view:SetData()
- self.money_view:ChangeShowFlag("smallWindow")
-
- self.img_tip_tmp.text = string.format('宝宝点赞榜每日 %s 结算', HtmlColorTxt( "04:00", ColorUtil.GREEN_DARK))
- end
-
- function ChildRankView:AddEvent()
-
- self.model:Fire(ChildConst.CHILD_REQ_EVENT, 16507) -- 宝宝点赞排行榜
-
- local function updata_child_rank_info_fun(vo)
- self:UpdateView(vo)
- end
- self.updata_child_rank_info = self.model:Bind(ChildConst.UPDATA_CHILD_NICE_RANK_INFO, updata_child_rank_info_fun) --
-
-
- local function SUCCESS_CHILD_NICE_fun(vo)
- self.model:Fire(ChildConst.CHILD_REQ_EVENT, 16507) -- 成功后刷新
- end
- self.success_child_nice = self.model:Bind(ChildConst.SUCCESS_CHILD_NICE, SUCCESS_CHILD_NICE_fun)
-
- local on_click = function ( click_obj )
- if self.closeBtn_obj == click_obj then
- self:Close()
- elseif self.btn_get_obj == click_obj then
- if self.can_get then
- self.model:Fire(ChildConst.CHILD_REQ_EVENT, 16540, 2)
- end
- local child_info = self.model:GetChildInfo( )
- if child_info.yest_reward == 0 then
- Message.show("昨日未上榜")
- elseif child_info.yest_reward == 2 then
- Message.show("已经领过了哟~")
- end
- end
- end
- AddClickEvent(self.closeBtn_obj, on_click)
- AddClickEvent(self.btn_get_obj, on_click)
-
- local function update_reward_func()
- self:UpdateRewardRed()
- end
- self:BindEvent(self.model, ChildConst.UPDATE_RANK_REWARD_RED, update_reward_func)
- end
-
- function ChildRankView:UpdateView(list)
-
-
- if TableSize(list.rank_list)<=0 then
- self.none_obj:SetActive(true)
- else
- self.none_obj:SetActive(false)
-
- end
- --生成rankitem
- local rank_list = list.rank_list
- --print("=============>>> YiRan:ChildRankView [start:87] rank_list ------------------------------------------")
- --PrintTable(rank_list)
- --print("=============>>> YiRan:ChildRankView [end] ------------------------------------------")
- local sort_func = function ( a, b )
- return a.rank < b.rank
- end
- table.sort(rank_list, sort_func)
-
- for k,v in pairs(rank_list) do --my_rank
- local item = self.rank_item_list[k]
- if item == nil then
- item = ChildRankItem.New(self.Content)
- self.rank_item_list[k] = item
- end
- self.rank_item_list[k]:SetData(v)
- end
- --myrankitem
-
- if TableSize(list.my_rank) > 0 then
-
- local myRank = list.my_rank[1]
- --self.txt_playerName_tmp.text = myRank.name or ""
-
- self.txt_childrName_tmp.text = ("宝宝:".. HtmlColorTxt( myRank.child_name or "", ColorUtil.WHITE_DARK))
- self.txt_niceNum_tmp.text = myRank.vote_num or ""
- self.txt_fight_num_tmp.text = "战力:" .. HtmlColorTxt( myRank.role_power or "", ColorUtil.WHITE_DARK)
- -- self.txt_no_rank_none_obj:SetActive(false)
- -- self.txt_no_rank_obj:SetActive(false)
- -- self.img_rank_obj:SetActive(true)
- -- if myRank.rank <= 3 then
- -- lua_resM:setImageSprite(self, self.img_rank_img, "child_asset", "child_rank_png"..myRank.rank)
- -- elseif myRank.rank > 3 then
- -- self.img_rank_obj:SetActive(false)
- -- self.txt_no_rank_none_obj:SetActive(false)
- -- self.txt_no_rank_obj:SetActive(true)
- self.txt_no_rank_tmp.text = string.format("第%s名", myRank.rank)
- -- end
-
- else
- -- self.txt_no_rank_obj:SetActive(false)
- -- self.img_rank_obj:SetActive(false)
- -- self.txt_no_rank_none_obj:SetActive(true)
- --self.myRank_obj:SetActive(false)
- self.txt_no_rank_tmp.text = "暂未上榜"
- self.txt_fight_num_tmp.text = "战力:" .. HtmlColorTxt( RoleManager.Instance.mainRoleInfo.fighting or "", ColorUtil.WHITE_DARK)
- self.txt_niceNum_tmp.text = 0
- --self.txt_playerName_tmp.text = RoleManager.Instance.mainRoleInfo.name or ""
- self.txt_childrName_tmp.text = ("宝宝:".. HtmlColorTxt( self.model:GetChildInfo().child_name or "", ColorUtil.WHITE_DARK) )
- end
-
- local RoleVo = RoleManager.Instance.mainRoleInfo
- --vip_icon
- -- if not self.mainRole_vip_item then
- -- self.mainRole_vip_item = RoleVipItem.New(self.vip_icon)
- -- end
- -- self.mainRole_vip_item:SetData(RoleVo.vip_flag,RoleVo.sup_vip_type)
- --头像
-
- if not self.playHeadItem then
- self.playHeadItem = HeadRoleItem.New(self.role_icon)
- self.playHeadItem:SetItemSize(68,68)
- end
- local head_data = {
- vo = {use_bg = 2, id = RoleVo.role_id, server_id = RoleVo.ser_id, career = 0,
- level = RoleVo.level, sex = RoleVo.sex, turn = RoleVo.turn, board = RoleVo.dress_board,
- picture_ver = RoleVo.picture_ver, picture = RoleVo.picture, profile_photo_id = RoleVo.profile_photo_id},
- }
- self.playHeadItem:SetData(head_data)
-
- lua_resM:setImageSprite(self, self.sex_img, "common_asset", RoleVo.sex == 1 and "com_boy" or "com_girl", true)
- if not self.vipItem then
- self.vipItem = RoleVipItem.New(self.vip_img.transform)
- end
- self.vipItem:SetData(RoleVo.vip_flag, RoleVo.sup_vip_type)
-
- if RoleVo.vip_flag == 0 and RoleVo.sup_vip_type == 0 then
- self.vip_obj:SetActive(false)
- else
- self.vip_obj:SetActive(true)
- end
- self.name_tmp.text = HtmlColorTxt( " " .. RoleVo.name, "#ffffff")
- SetSizeDelta(self.name, self.name_tmp.preferredWidth + 5, self.name_tmp.preferredHeight)
- ---
- local list_reward = {}
- for k,v in pairs( self.model:GetConfigChildVoteReward()) do
- table.insert(list_reward,v)
- end
- local sort_func = function ( a, b )
- return a.rank_low < b.rank_low
- end
- table.sort(list_reward, sort_func)
-
- for k,v in pairs(list_reward) do
- local item = self.rank_reward_item_list[k]
- if item == nil then
- item = ChildRankRewardItem.New(self.Content_reward)
- self.rank_reward_item_list[k] = item
- end
- self.rank_reward_item_list[k]:SetData(v,k)
- end
- --[[if not self.item_list_com then
- self.item_list_com = self:AddUIComponent(UI.ItemListCreator)
- end
- local info = {
- data_list = self.model.degree_cfg,
- item_con = self.Content,
- item_class = ChildRankViewItem,
- item_width = 864,
- item_height = 160,
- -- space_x = 0,
- -- space_y = 0,
- start_x = 13.4,
- start_y = -12.5,
- scroll_view = self.ScrollView,
- create_frequency = 0.02,
- on_update_item = function(item, i, v)
- item:SetData(v)
- end,
- }
- self.item_list_com:UpdateItems(info)
- self.item_list_com:ScrollToItem(self.model.degree,-17.5)]]
-
- local last_rank = self.model:GetChildInfo().yest_rank
- if last_rank and last_rank ~= 0 then
- self.lb_last_day_rank_tmp.text = "昨日排名:" .. HtmlColorTxt( last_rank, ColorUtil.GREEN_DARK)
- else
- self.lb_last_day_rank_tmp.text = "昨日排名:未上榜"
- end
- self:UpdateRewardRed()
- end
-
- function ChildRankView:UpdateRewardRed( )
- -- "myRank/btn_get/lb_btn_get:tmp",
- -- "myRank/btn_get:obj:img",
- -- "myRank/btn_get/btn_get_red:obj",
- local need_red = self.model:GetShowBabyRankReward()
- self.btn_get_red_obj:SetActive(need_red)
- if not need_red then
- SetTMPSharedMaterial(self.lb_btn_get_tmp,
- ShaderTools.TMPSharedMaterialType.FZZZOutlineDarkGrayBtn)
- else
- SetTMPSharedMaterial(self.lb_btn_get_tmp,
- ShaderTools.TMPSharedMaterialType.FZZZOutlineDarkOrangeBtn)
- end
- SetImageGray(self.btn_get_img, not need_red)
- self.can_get = need_red
- end
-
- function ChildNiceRecordView:SetCallBack(callBack)
- self.callBack = callBack
- end
-
- function ChildRankView:DestroySuccess( )
-
- if self.updata_child_rank_info then
- self.model:UnBind(self.updata_child_rank_info)
- self.updata_child_rank_info = nil
- end
-
-
- if self.success_child_nice then
- self.model:UnBind(self.success_child_nice)
- self.success_child_nice = nil
- end
-
-
- for i, v in ipairs(self.rank_item_list) do
- v:DeleteMe()
- v = nil
- end
- self.rank_item_list = {}
-
- for i, v in ipairs(self.rank_reward_item_list) do
- v:DeleteMe()
- v = nil
- end
- self.rank_reward_item_list = {}
-
- if self.playHeadItem then
- self.playHeadItem:DeleteMe()
- self.playHeadItem = nil
- end
-
- if self.money_view then
- self.money_view:DeleteMe()
- self.money_view = nil
- end
-
- -- if self.mainRole_vip_item then
- -- self.mainRole_vip_item:DeleteMe()
- -- self.mainRole_vip_item = nil
- -- end
-
- if self.tabWindowComponent then
- self.tabWindowComponent:DeleteMe()
- self.tabWindowComponent = nil
- end
- if self.vipItem then
- self.vipItem:DeleteMe()
- self.vipItem = nil
- end
- end
|