Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

大佬,有没有绑定数据到列表的例子呀... #29

Open
510463496 opened this issue Jul 17, 2023 · 12 comments
Open

大佬,有没有绑定数据到列表的例子呀... #29

510463496 opened this issue Jul 17, 2023 · 12 comments

Comments

@510463496
Copy link

image
2333.不懂怎么绑定数据

@IcePower
Copy link
Owner

这个你去看FairyGUI官方教程啊

@510463496
Copy link
Author

嗯 我这么写了现在
image

@singleTree
Copy link

这么写的话,item里面的逻辑你放哪里呢?这里很不好弄

@510463496
Copy link
Author

主要是我也不知道要怎么弄...所以就那样子写了,然后在公司的客户端框架里, 我看原来的项目就是这么写
image
,但是我在现在我自己的X-ET项目里...没效果,不知道怎么摆姿势...嘻嘻

@singleTree
Copy link

x-et里面都会把fui的ui包在一个component里面的

@510463496
Copy link
Author

那你是怎么绑这个列表数据的

@510463496
Copy link
Author

x-et里面都会把fui的ui包在一个component里面的

@510463496
Copy link
Author

x-et里面都会把fui的ui包在一个component里面的

老哥,你是怎么写的

@510463496
Copy link
Author

image
我这么写是可以的. 之前是我搞错了 可以开心写咯

@singleTree
Copy link

是可以,但是没办法复用这个item。因为逻辑都写到panel里面去了。我也没想到好的写法,不知道作者是啥写法

@IcePower
Copy link
Owner

IcePower commented Feb 27, 2024

有一个不太完善的方法,这方法不支持虚拟列表。
就是在 FairyGUI 里把 Item 设置为公共界面,Item 就会导出代码,把逻辑写在导出的代码就可以了。
举个例子,CardPanel 是 Item,设置为公共界面,会生成 CardPanelSystem。

FUI_CardPanel fuiCardPanel = (FUI_CardPanel)self.FUIMainPanel.CardList.AddItemFromPool();
CardPanel cardPanel = self.AddChild<CardPanel, FUI_CardPanel>(fuiCardPanel, true);

注意,作为 List 的 Item 时,CardPanelSystem 里的 RegisterUIEvent, OnShow, OnHide, BeforeUnload 函数没有地方调用。绑定事件的代码需要写在 Awake 里,或者在 Awake 里调用 RegisterUIEvent。

@IcePower
Copy link
Owner

如果是虚拟列表的话,需要自己写逻辑判断,在Item消失的时候调用 cardPanel.Dispose(), Item 显示的时候再 self.AddChild<CardPanel, FUI_CardPanel>(fuiCardPanel, true);
这个方法我还没试过,应该可以。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants