这个你加一下 padding 和 spacingX 不就好了吗?
padding 和spaceingX要自己算啊,就不是居中了啊,所以我现在就直接用node,自己直接算了。
这样用layout没意义啊,直接用node
node和layout的区别就在于
本来要
for(var i in cs){
node.addChild(cs[i])
cs[i].x = (i-1) * cs.widht
}
而layout只是改成了
for(var i in cs){
node.addChild(cs[i])
cs[i].x = (i-1) * cs.widht
}
现在如果居中还要自己算pading和spaceingX
for(var i in cs){
node.addChild(cs[i])
}
node.pading.left =
node.pading.spaceX =
那我直接用node 就好了,每次都这样,麻烦说建议加个居中。
你看一半对齐是不是都有左对齐,右对齐,居中。不会说左对齐,右对齐,居中你就用左对齐,然后,算一下偏移多少,自己偏移一下
这个貌似还是挺多用的,建议引擎组考虑下吧
恩,我先建个 issue。后面再排计划。
这种功能也要引擎加吗?不就 Layout 上面多一个父节点(用来画背景)的事
没错,只要先用左排列,再把layout本身居中就可以了,居中的这个功能没必要加。
Resize Mode 设为 Container,然后 Layout 的 Anchor X 设为 0.5,不就是居中了
按这个说法,其实layout可以去掉了。
我一句话就可以实现layout了
for(){
root.addChild(node)
node.setPositionX(xxxx)
}
你有需要有精力的话,确实可以去掉啊,creator 只是给你一个范例,实际项目自己做很正常。
Layout 这个组件确实鸡肋,既然做组件就做完善一点嘛,没有居中布局,难道让开发者重新造轮子吗,那还用它干嘛,直接重写一个算了
Resize Mode 设为 Container,然后 Layout 的 Anchor X 设为 0.5,不就是居中了
有bug 子组件来回切换active的值 子组件没有重新居中对齐 编辑器上是可以的 代码上不行
建议新开一个帖子,另外麻烦附上一个重现问题的 demo,我看看是引擎 bug 还是你的用法问题。
你的这个问题是widget里面有个alignonce,应该不是bug
其实他们说的是像unity那样的layout…可以选左对齐,右对齐啥的。
本人亲测有效
您好,我有遇到过这种情况:
layout需要根据屏幕自适应widget的left和right设置0,type设置grid,这样的话往layout里加子控件的话就无法居中排列,当然可以自己用代码控制居中,但略显冗余,如果layout可以加一个子空间居中排列的话应该会省很多事
官方不做游戏的。没考虑过自适应的情况。
