libgdx, Table布局

Table神奇的地方:


# 能自动适应屏幕尺寸进行布局。

# table.add(对象),同一个对象只能被add一次。如果一个对象调用多次add,效果相当于add一次。

# UI中,按钮,dialog,是从table继承过来的,其它不是。

 

table layout有两个table概念:root table 和 logic table.

root table ,这是最顶层的table,尺寸必须设定与屏一样,其它内嵌表或者对象都是add到它里面的。

用法:(一般用法:new一个table作为roottable, 其它table都可成为logic table了)

 Table roottable = new Table();
 roottable.setFillParent(true);

logic table,这是由cell组成的。

 

 

如果要实现下图布局,如何实现?

roottable.right().bottom();

roottable.add(logictable); 就可以实现了。

 

如果实现下面这样布局,使用一个roottable就比较困难了,一个可行的解决方案就是:stack.

        Stack stack = new Stack();
        stack.setFillParent(true);

        stack.add(buildFunctionButton());//每个build函数里面都有一个roottable.
        stack.add(buildVersion());
        m_stage.addActor(stack);

 

     非常重要一点:cell的设置min尺寸居然可以影响到控件的最小尺寸:

table.add(m_kwLabel_prompt).minWidth(200);、、设置label.setWidth()都没用,设置cell的最小宽度居然是有效的。

 

设置cell的宽度:其实我想要的效果是:将右边的对象的尺寸弄宽点,因为它是一个编辑框,我想让它宽点可以多写些字。默认的效果,宽度太小了。

使用方法:

table.add(textFieldUserName).width(300).padRight(100);

效果图:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值