在SOUI中使用窗口自適應大小

SOUI 2.5.0.3開始支持窗口大小自適應。

2.5.0.3以前,宿主窗口要適應顯示內容大小比較麻煩,因爲一般都是佈局內容適應宿主。

SOUI 2.5.+開始支持線性佈局,線性佈局是借鑑的Android的線性佈局,對於內容自適應的支持更加理想。

要想窗口大小自適應,只需要在佈局的SOUI結點中指定width或者height爲-1即可(哪個爲-1代表哪個方向上自適應),前提是Create這個窗口時沒有在代碼中指定窗口大小。

示例:

<?xml version="1.0"?>
<SOUI name="wrap_content" title="wrap_content" width="400" height="-1" margin="5,5,5,5" resizable="1" wndType="normal" translucent="1">
  <!--演示root大小自动计算,注意soui结点width,height的设置,哪一个值需要自动计算就设置为-1-->
    <root size="-2,-1" layout="vbox" padding="5,5,5,5" colorBkgnd="#ffffff">
    <caption size="-2,-1" colorBkgnd="#ffff00">
      <text size="-1,-1" font="bold:1" text="窗口大小自适应演示,支持左右拉伸"/>
    </caption>
    <window size="-2,100" layout="hbox">
      <window size="0,-2" text="水平平分窗口1" weight="1" colorBkgnd="#ff0000"/>
      <window size="0,-2" text="水平平分窗口2" weight="1" colorBkgnd="#00ff00"/>
      <window size="0,-2" text="水平平分窗口3" weight="1" colorBkgnd="#0000ff"/>
    </window>
    <text size="-1,-1" text="使用layout_gravity属性居中对齐" layout_gravity="center"/>
    <window size="-1,-1" layout_gravity="right" extend_top="5" layout="hbox">
      <!--IDCANCEL支持enter退出窗口-->
      <button size="-1,-1" padding="10,5,10,5" id="IDOK" text="确定"/>
      <!--IDCANCEL支持esc退出窗口-->
      <button size="-1,-1" padding="10,5,10,5" extend_left="10" id="IDCANCEL" text="取消"/>
    </window>
    </root>
</SOUI>

顯示效果:

 

posted @ 2017-03-26 08:35  启程软件  阅读(3509)  评论(0编辑  收藏  举报