Skip to content

Commit 351bdde

Browse files
committed
Widgets.base:reset方法在new初始化时不再尝试执行visble状态更新函数,可能会由于数据初始化顺序导致错误,之后加载场景时还会再刷新一次所以没必要
1 parent 6b915a0 commit 351bdde

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

widget.lua

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,7 @@ function Widgets.base:getInfo()
226226
end
227227
return str
228228
end
229-
function Widgets.base:reset()
229+
function Widgets.base:reset(init)
230230
assert(not self.name or type(self.name)=='string',"[widget].name need string")
231231

232232
assert(type(self.x)=='number',"[widget].x need number")
@@ -304,10 +304,12 @@ function Widgets.base:reset()
304304
if self._visible==nil then
305305
self._visible=true
306306
end
307-
if self.visibleFunc then
308-
self._visible=self.visibleFunc()
309-
elseif self.visibleTick then
310-
self._visible=self.visibleTick()
307+
if not init then
308+
if self.visibleFunc then
309+
self._visible=self.visibleFunc()
310+
elseif self.visibleTick then
311+
self._visible=self.visibleTick()
312+
end
311313
end
312314
end
313315
function Widgets.base:setVisible(bool)
@@ -2321,7 +2323,7 @@ function WIDGET.new(args)
23212323
errorf("WIDGET.new(args): Illegal argument %s for widget %s",k,t)
23222324
end
23232325
end
2324-
w:reset()
2326+
w:reset(true)
23252327

23262328
return w
23272329
end

0 commit comments

Comments
 (0)