在smobiler中可以通過相對布局或者絕對布局實現(xiàn)自適應(yīng)不同手機分辨率。
例如實現(xiàn)下圖中的布局,圖中的布局實際可以分成3個部分,部分1可以使用Title控件,部分2可以使用Panel(在Panel中加入IconMenuView可以實現(xiàn)圖中效果,本文不具體說明),部分3 使用ToolBar控件,具體見下文。
我們擁有10余年網(wǎng)頁設(shè)計和網(wǎng)站建設(shè)經(jīng)驗,從網(wǎng)站策劃到網(wǎng)站制作,我們的網(wǎng)頁設(shè)計師為您提供的解決方案。為企業(yè)提供成都網(wǎng)站制作、網(wǎng)站建設(shè)、微信開發(fā)、小程序設(shè)計、成都做手機網(wǎng)站、H5場景定制、等業(yè)務(wù)。無論您有什么樣的網(wǎng)站設(shè)計或者設(shè)計方案要求,我們都將富于創(chuàng)造性的提供專業(yè)設(shè)計服務(wù)并滿足您的需求。
??
絕對布局
新建窗體,窗體的Layout屬性設(shè)置Absolute,首先在窗體中拖入一個Title控件,dock屬性設(shè)置Top,再拖入以ToolBar控件,dock屬性設(shè)置Bottom,最后再拖入一個Panel控件,dock屬性設(shè)置Fill。
這樣Title一直處于窗體的頂部,ToolBar處于底部,而Panel始終撐滿剩余的空間。
注:
1.dock屬性只在絕對布局下生效
2.需要注意控件拖入的順序,上述的步驟中如果先拖入Panel再拖入ToolBar設(shè)置dock屬性后,Panel控件會覆蓋toorbar控件
3.絕對布局參考https://www.smobiler.com/guide/layout.aspx
相對布局
新建窗體,窗體的Layout屬性設(shè)置Relative,窗體的Direction設(shè)置Column,接著在窗體中拖入一個Title控件,一個Panel控件,一個ToolBar控件,將這個三個控件的Flex屬性分別設(shè)置為1,8,1。
窗體的Direction設(shè)置Column是為了讓窗體中的控件垂直排列,F(xiàn)lex是比例因子,用于控制控件在窗體中的高度,Title的Flex為1,其高度占窗體高度的1/10,panel占8/10,toolbar占1/10.
注:
1.Flex比例因子,只在相對布局下生效
2.需要注意控件的拖入順序
3.相對布局參考 https://www.smobiler.com/guide/layout1.aspx???
上述兩種布局都可以使得Title一直處于窗體的頂部,ToolBar處于底部,而Panel始終撐滿剩余的空間,不會出現(xiàn)因手機屏幕分辨率導(dǎo)致的控件未能撐滿屏幕。
補充:窗體大小和屏幕分辨率是自適應(yīng) ,F(xiàn)orm若設(shè)置寬300,高500,顯示的時候判斷300為手機的寬來對應(yīng)顯示,即手機屏幕的寬度對應(yīng)300?? 所以若是18:9的顯示屏 對應(yīng)的Form為寬300,高600
彩蛋
Smobiler中Label控件如何根據(jù)內(nèi)容自適應(yīng)大小呢?
在相對布局下Label控件可根據(jù)文本自動撐大控件,具體實現(xiàn):
1.將窗體的Layout屬性設(shè)置Relative(或者Panel的Layout屬性設(shè)置Relative);
2.在窗體(或者Panel)中拖入label控件,Size設(shè)置(0,0)即可實現(xiàn)。