找回密码
 点一下
查看: 995|回复: 9

自定义UI中的一些疑问,求指导

[复制链接]
发表于 2013-2-4 21:16:13 来自手机 | 显示全部楼层 |阅读模式
本帖最后由 娜渃卟Ran 于 2013-2-4 21:22 编辑

咳咳,第二篇帖子,还是不能水!

在编辑器的UI页面里面不能修改那一堆布局,需要添加布局,然后进行覆盖。对此,我想请教一下为什么不能修改呢?按道理说修改的只是地图里面的layout文件啊?

为了验证刚刚的观点,我用mpq工具打开地图发现是没有所有的UI布局的,只有自己添加的。这是否意味着游戏运行时是直接调用BLZ给我们的UI,有我们重载的地方才调用我们自己写的layout???

如果上两问猜想是真,那么求指教UI调用的入口。额,用词不当请原谅哈,我的意思就是游戏中用的是否是GameUI那个布局,我们重载时name,file所指定的GameUI是否就是为了指明覆盖的文件就是这里面的文件?

问题有点多,描述不清楚,还请多担待。

呼叫头目,呼叫大神。

补充一句,在UI层到底是谁调用谁?就是说name对应的路径做何解释?是用我自己写的这个UI去替换GameUI里面的对应路径的布局文件,还是那个布局文件不使用默认的布局,使用我写的。额,我也说不清楚了。。。
发表于 2013-2-4 22:12:42 | 显示全部楼层
游戏中的UI布局是系统级的不可修改的
你如果想用布局来覆盖系统UI,可以自定义布局,路径符合一定规则即可
也可以在地图中用触发器关联系统UI,直接用触发器处理UI布局
回复

使用道具 举报

 楼主| 发表于 2013-2-5 14:11:47 来自手机 | 显示全部楼层
我记得头目说过UI层面触发跟数据模块是同级的,但我想尝试直接重载布局,不用触发器修改,所以才这么问。
回复

使用道具 举报

发表于 2013-2-5 16:01:49 | 显示全部楼层
基本上你的猜测是正确的。游戏会自动调用默认的GameUI.然后遇到你有重载的部分就调用你所重载的部分。其实原理还是挺简单的。

注意重载不是简单覆盖,原frame依然会被读取,只是再额外读取你所重载的部分而已,相同属性会覆盖掉,但是不同属性会两边都读取。这点和xml的类似。

点评

比如说我自己写了的CommandPanel只设定了6个按钮,系统会读取我写的6个加原文件的9个?如果我想只有6个呢?除了把那9个的位置移出屏幕或者Command面包尺寸设为6个按钮那么大这两种方法,还有没有其他方法呢?  详情 回复 发表于 2013-2-5 19:16
回复

使用道具 举报

 楼主| 发表于 2013-2-5 19:16:49 来自手机 | 显示全部楼层
本帖最后由 娜渃卟Ran 于 2013-2-5 19:20 编辑
麦德三世 发表于 2013-2-5 16:01
基本上你的猜测是正确的。游戏会自动调用默认的GameUI.然后遇到你有重载的部分就调用你所重载的部分。其实原 ...


比如说我自己写了的CommandPanel只设定了6个按钮,系统会读取我写的6个加原文件的9个?如果我想只有6个呢?除了把那9个的位置移出屏幕或者Command面板尺寸设为6个按钮那么大这两种方法,还有没有其他方法呢?
回复

使用道具 举报

发表于 2013-2-6 09:18:20 | 显示全部楼层
其实有直接删除frame的方法,但是不能去使用。因为很多默认Frame必须保留,否则会导致游戏载入失败。

所以移出屏幕是最好的选择。

点评

哦哦,谢谢头目。  详情 回复 发表于 2013-2-6 20:50
回复

使用道具 举报

 楼主| 发表于 2013-2-6 20:50:38 来自手机 | 显示全部楼层
麦德三世 发表于 2013-2-6 09:18
其实有直接删除frame的方法,但是不能去使用。因为很多默认Frame必须保留,否则会导致游戏载入失败。

所 ...

哦哦,谢谢头目。
回复

使用道具 举报

发表于 2013-2-7 11:42:40 | 显示全部楼层
无视我啊~~~

点评

额,板凳楼啊,貌似是我的失误。。。。。  详情 回复 发表于 2013-2-7 14:27
回复

使用道具 举报

 楼主| 发表于 2013-2-7 14:27:28 来自手机 | 显示全部楼层
woaibusi 发表于 2013-2-7 11:42
无视我啊~~~

额,板凳楼啊,貌似是我的失误。。。。。
回复

使用道具 举报

发表于 2013-2-7 16:11:52 | 显示全部楼层
好吧,小彬不会,于是等虫群出来吧。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-11-24 22:54 , Processed in 0.128513 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表