QML 从无到有 2 (移动适配)
2018-06-17 23:39:37来源:未知 阅读 ()
随着项目深入,需要移植到安卓上,问题来了,QML安卓适配!
幸好PC端程序和手机屏幕长宽比例相似。虽然单位像素,尺寸不同,通过比例缩放,可以实现组件PC和安卓通用代码。
第一步:定义全局的转换函数(300,500是你的PC端设计尺寸)
1 property var x_scale:mainWindow.width/300 2 property var y_scale:mainWindow.height/500 3 4 function get_x(x) 5 { 6 return x*x_scale; 7 } 8 function get_y(y) 9 { 10 return y*y_scale; 11 }
第二步:将所有相关尺寸的都通过上面的转换函数计算新值
1 Text { 2 id:nameText 3 x:get_x(8) 4 y:get_y(11) 5 width:get_x(80) 6 horizontalAlignment:Text.AlignRight 7 color: "#000000" 8 text: "" 9 }
第三步:对于有些控件,安卓和PC端表现形式不一样,需要通过判断平台,额外定义。判断平台代码
function is_android() { return (Qt.platform.os == "android"); } //调用方法 Image { id: imageLogo y: get_y(58) width: get_x(167) height: get_y(70) anchors.horizontalCenterOffset: is_android()?get_x(-8):get_x(-4) anchors.horizontalCenter: parent.horizontalCenter source: "logo.png" }
最后,对于字体的大小的适配,推荐使用pixelSize来定义,同样需要转换函数来计算新的尺寸,这样可以跟其他控件保持一致。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:const in C/C++
下一篇:内存分为的5大区
- 完全依赖QML实现播放器 2020-03-03
- Qt无边框窗口的移动、拉伸边框、鼠标滚轮缩放大小 2019-12-25
- C++11 右值引用和移动语义 2019-08-16
- C# Xamarin移动开发基础进修篇 2018-06-27
- 逻辑右/左移与算术右/左移 2018-06-18
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash