在smobiler中可以通过相对布局或者绝对布局实现自适应不同手机分辨率。

例如实现下图中的布局,图中的布局实际可以分成3个部分,部分1可以使用Title控件,部分2可以使用Panel(在Panel中加入IconMenuView可以实现图中效果,本文不具体说明),部分3 使用ToolBar控件,具体见下文。


绝对布局

新建窗体,窗体的Layout属性设置Absolute,首先在窗体中拖入一个Title控件,dock属性设置Top,再拖入以ToolBar控件,dock属性设置Bottom,最后再拖入一个Panel控件,dock属性设置Fill。

这样Title一直处于窗体的顶部,ToolBar处于底部,而Panel始终撑满剩余的空间。

注:

1.dock属性只在绝对布局下生效

2.需要注意控件拖入的顺序,上述的步骤中如果先拖入Panel再拖入ToolBar设置dock属性后,Panel控件会覆盖toorbar控件

3.绝对布局参考https://www.smobiler.com/guide/layout.aspx


相对布局

新建窗体,窗体的Layout属性设置Relative,窗体的Direction设置Column,接着在窗体中拖入一个Title控件,一个Panel控件,一个ToolBar控件,将这个三个控件的Flex属性分别设置为1,8,1。

窗体的Direction设置Column是为了让窗体中的控件垂直排列,Flex是比例因子,用于控制控件在窗体中的高度,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始终撑满剩余的空间,不会出现因手机屏幕分辨率导致的控件未能撑满屏幕。

补充:窗体大小和屏幕分辨率是自适应 ,Form若设置宽300,高500,显示的时候判断300为手机的宽来对应显示,即手机屏幕的宽度对应300   所以若是18:9的显示屏 对应的Form为宽300,高600


彩蛋

Smobiler中Label控件如何根据内容自适应大小呢?

在相对布局下Label控件可根据文本自动撑大控件,具体实现:

1.将窗体的Layout属性设置Relative(或者Panel的Layout属性设置Relative);

2.在窗体(或者Panel)中拖入label控件,Size设置(0,0)即可实现。

最新文章

  1. ajax前后端数据交互简析
  2. Redis 的性能幻想与残酷现实
  3. hasClass addClass removeClass
  4. SQL server 表之间的关系生成图
  5. (Java)利用ListIterator(iterator 重复器/迭代器的子接口) 操作ArrayList
  6. Linux 配置多IP
  7. dist-upgrade
  8. ES6核心内容精讲--快速实践ES6(二)
  9. 前端向后台的华丽转身 — PHP入门篇
  10. linux-head
  11. 日志框架之Logback
  12. Geohash-》通过经纬度计算两地距离的函数
  13. golang中使用Redis
  14. Pocket Gems面经prepare: Diamond and Ruby
  15. leetcode 103
  16. TypeError: unsupported operand type(s) for +: 'float' and 'decimal.Decimal'
  17. $Django 在线文本编辑器skindeditor
  18. Swagger 路径过滤 -PreSerializeFilters
  19. echarts 怎样去掉白色边框线 和怎样去除背景中的网格
  20. 2018.09.08 NOIP模拟eat(贪心)

热门文章

  1. Supermap/Cesium 开发心得----获取三维视角的四至范围
  2. 关于选用ccflow你所担心的问题都在这里为您解答
  3. PyQt5内嵌浏览器
  4. IOC、DI、DIP
  5. Linux 终端(TTY)
  6. 如何使用 RxJS 更优雅地进行定时请求
  7. SpringMVC框架之第三篇
  8. How to: Use Both Entity Framework and XPO in a Single Application 如何:在单个应用程序中同时使用实体框架和 XPO
  9. Oracle 定时备份数据库
  10. 阿里云RDS for SQL Serrver关于权限的一个严重Bug