145 lines
3.8 KiB
Plaintext
145 lines
3.8 KiB
Plaintext
autoImport('GVGDetailViewItem')
|
|
GVGDetailView = class("GVGDetailView",BaseView)
|
|
GVGDetailView.ViewType = UIViewType.PopUpLayer
|
|
|
|
reusableArray = {}
|
|
showArray = {}
|
|
|
|
function GVGDetailView:Init()
|
|
self:GetGameObjects()
|
|
self:InitView()
|
|
self:addViewEventListener()
|
|
self:addListEventListener()
|
|
end
|
|
|
|
function GVGDetailView:OnExit()
|
|
-- self:CancelListenServerResponse()
|
|
-- if self.itemsController ~= nil then
|
|
-- for i = 1, #self.itemsController do
|
|
-- self.itemsController[i]:OnExit()
|
|
-- end
|
|
-- end
|
|
end
|
|
|
|
function GVGDetailView:InitView( )
|
|
self.uiGridOfItems = self.goItemsRoot:GetComponent(UIGrid)
|
|
if self.listControllerOfItems == nil then
|
|
self.listControllerOfItems = UIGridListCtrl.new(self.uiGridOfItems, GVGDetailViewItem, "GVGDetailViewItem")
|
|
end
|
|
ServiceFuBenCmdProxy.Instance:CallSuperGvgQueryUserDataFubenCmd();
|
|
end
|
|
|
|
function GVGDetailView:GetGameObjects()
|
|
self.goItemsRoot = self:FindGO("ItemsRoot", self.gameObject)
|
|
self.itemsScrollView = self:FindComponent("DetailItemsView", UIScrollView)
|
|
self.arrowList = {}
|
|
for i=2,8 do
|
|
self.arrowList[i] = self:FindGO("Arrow" .. i)
|
|
local go = self:FindGO("OrderButton_" .. i)
|
|
self:AddClickEvent(go,function (go)
|
|
-- helplog("<<<====Arange=====>>>", go.name)
|
|
local index = tonumber(string.split(go.name , "_")[2])
|
|
self:SetIndexArangement(index)
|
|
end)
|
|
end
|
|
|
|
self.selfGuildToggle = self:FindComponent("SelfGuildToggle", UIToggle)
|
|
-- self.selfGuildToggle.gameObject:SetActive(false)
|
|
EventDelegate.Add(self.selfGuildToggle.onChange, function ()
|
|
self:SetIsSelfGuild()
|
|
end)
|
|
end
|
|
|
|
function GVGDetailView:SetIsSelfGuild()
|
|
local value = self.selfGuildToggle.value
|
|
if value then
|
|
local guildData = GuildProxy.Instance.myGuildData;
|
|
if self.itemsController ~= nil then
|
|
for i = 1, #self.itemsController do
|
|
local guildCell = self.itemsController[i]
|
|
if(guildData.guid == guildCell.data[10]) then
|
|
guildCell.gameObject:SetActive(true)
|
|
else
|
|
guildCell.gameObject:SetActive(false)
|
|
end
|
|
end
|
|
end
|
|
else
|
|
if self.itemsController ~= nil then
|
|
for i = 1, #self.itemsController do
|
|
local guildCell = self.itemsController[i]
|
|
guildCell.gameObject:SetActive(true)
|
|
end
|
|
end
|
|
end
|
|
self.uiGridOfItems:Reposition ()
|
|
self.itemsScrollView:ResetPosition()
|
|
end
|
|
|
|
function GVGDetailView:addViewEventListener( )
|
|
-- body
|
|
self:AddButtonEvent("CloseButton",function ( )
|
|
self:CloseSelf()
|
|
end)
|
|
end
|
|
|
|
function GVGDetailView:addListEventListener( )
|
|
-- body
|
|
self:AddListenEvt(ServiceEvent.FuBenCmdSuperGvgQueryUserDataFubenCmd, self.SetContent)
|
|
end
|
|
|
|
function GVGDetailView:SetContent()
|
|
local guildUserdata = SuperGvgProxy.Instance:GetUserDetails()
|
|
local userName = Game.Myself.data:GetName()
|
|
|
|
self.dataFirst = {}
|
|
local df = self.dataFirst
|
|
-- TableUtil.Print(guildUserdata)
|
|
for i=1, #guildUserdata do
|
|
local userData = guildUserdata[i].detailData
|
|
if userData[1] == userName then
|
|
df[9] = userData
|
|
end
|
|
|
|
for j=2,8 do
|
|
local lastFirstData = df[j]
|
|
if not lastFirstData then
|
|
df[j] = userData
|
|
elseif lastFirstData[j] < userData[j] then
|
|
df[j] = userData
|
|
end
|
|
end
|
|
end
|
|
|
|
self:SetIndexArangement(2)
|
|
end
|
|
|
|
|
|
function GVGDetailView:SetIndexArangement( index )
|
|
local guildUserdata = SuperGvgProxy.Instance:GetUserDetails()
|
|
table.sort(guildUserdata, function (x, y)
|
|
return x.detailData[index] > y.detailData[index]
|
|
end)
|
|
|
|
self.listControllerOfItems:ResetDatas(guildUserdata)
|
|
self.itemsController = self.listControllerOfItems:GetCells()
|
|
|
|
local df = self.dataFirst
|
|
for i=2,8 do
|
|
local firstData = df[i]
|
|
if firstData and firstData[i] ~= 0 then
|
|
local cell = self.listControllerOfItems:FindCellByData(firstData)
|
|
if cell then
|
|
cell:ActiveMax(i)
|
|
end
|
|
end
|
|
end
|
|
|
|
if self.lastArrow then
|
|
self.lastArrow:SetActive(false)
|
|
end
|
|
self.lastArrow = self.arrowList[index]
|
|
self.lastArrow:SetActive(true)
|
|
|
|
self:SetIsSelfGuild()
|
|
end |