我正在提供一些项目(容器),在" View"中,hbox
的布局。现在我想通过" Controller"为每个项目赋予flex
值。我怎么能这样做?
我浏览过文档,但无法找到setFlex
之类的任何方法。
编辑:
Ext.apply(Ext.getCmp('IdHere'), {flex: 1});
我从link得到了答案。 但现在的问题是,即使我动态更改flex值,容器的视图也不会改变。它保持不变。
我最初没有在" View"中分配弹性值。如上所述here
答案 0 :(得分:3)
我的第一个猜测是需要通过调用doLayout()
重新运行布局过程我不太确定,但我认为你必须调用包含hbox
布局的父元素。
答案 1 :(得分:1)
获取您的父容器(已应用布局hbox或vbox)然后获取项目并最终更改flex并更新布局
var ct = me.up('#parentComponent');
ct.items.get('itemId1').flex = 2;
ct.items.get('itemId2').flex = 2;
ct.updateLayout();