[]关于UI子界面的定义方式

1、场景:
有个完整独立的界面,如排行榜界面,里面有两大部分内容:一是各种类型的排行tab按钮(如战力、财富等等);二是具体某排行类型下、排行情况的滚动列表。现在,打算通过代码来设置列表中一行行的内容。
 
2、希望的做法:

F5568811-4FB9-4A7D-B222-0E839593E9E8.png

 
为了充分利用LayaAirIDE的优势,先在编辑模式中编辑好列表中的一项的内容以及布局——以上图一个个红框的内容为例。
然后希望导出一项内各个控件的变量,如头像、名字、排行数值等等,这一步一般通过设置属性中的【var】来实现。
接着,导出这一项专属的类,例如叫RankListItemUI。
最后,我创建一个界面逻辑类:RankListItem,继承导出类RankListItemUI,然后就可以直接引用导出类中导出的变量来写逻辑了——如设置头像的图片、设置名字内容,等等。
 
3、问题:
如果要实现上面希望的做法,好像只能针对这一个列表项,来专门创建一个页面,而页面一定需要是laya.ui.View类型的(可能自定义再继承了一层),而不能是laya.ui.Box、或laya.ui.Panel之类。因为导出类(在layaUI.max.all中)必须要有loadUI接口(我用的是分离模式)。
 
如果在游戏项目中,这些希望单独出一个对应逻辑类的小UI,都继承自laya.ui.View的话,能够满足以上需要,但如此大范围使用的话,会有性能上、或其他不利的影响吗?因为laya.ui.View给人的感觉,像是针对一个完整界面的,而不是像RankListItem那样的小UI的。
 
如果有不利影响,那有什么替代方案,能够满足以下需要呢:a. 能用IDE做小UI的布局编辑;b. 能自动导出小UI中的var来供逻辑类访问。
已邀请:

Laya_XS

赞同来自: junho2009

游戏中每一个显示的对象你都可以按一个view容器来组织,小到一个显示对象,大道N个对象的集合。可能你对ide的使用还是不太了解,你说的这些你可以在摸索中发现现在的版本都是有的

要回复问题请先

商务合作
商务合作