QT on Android是否不太适合用C++,而是QML?

阳光柠檬_ 2016-09-09 09:11:54
自从QT支持android开发后,觉得终于可以用C++写android程序了,但实际上用QT C++最多也就写个helloWorld的apk,QWidget、QPushButton 等很多效果不如原生的好。而在网上看到一些QT android程序的例子,大部分都是用QML写的。

是否有大神用QT C++开发过一个完整好看界面的Android程序呢?
...全文
6848 16 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
sadcruiser 2018-03-12
  • 打赏
  • 举报
回复
Qt官方文档都推荐使用QML做界面,功能实现用C++来实现,可以封装为注册类,或者注册属性,也很方便实现,QML做界面的确很华丽和灵活,做商业应用还是慎重,毕竟坑不少,遇到问题不好找答案。
feiyangqingyun 2017-03-10
  • 打赏
  • 举报
回复
如果是玩玩做点小工具,还行,如果要做商业项目,还是用原生的平台开发好。
下面是我用widget做的一个小工具,与服务器PHP通信获取数据。



阳光柠檬_ 2017-03-10
  • 打赏
  • 举报
回复
引用 14 楼 feiyangqingyun 的回复:
如果是玩玩做点小工具,还行,如果要做商业项目,还是用原生的平台开发好。 下面是我用widget做的一个小工具,与服务器PHP通信获取数据。
666666666666 不错~
佳朗 2016-12-23
  • 打赏
  • 举报
回复
其实,用qt搞android,一般都是从相关技术转过来(如js前端,qt 开发)。因为这样毕竟入手快,而且多平台。 之前,用其搞过项目,后来因为内存增长太厉害,就弃了。 本人开始学习时,资料很少。网上看了些,就自己练手高了个豆瓣fm,成功运行在手机上,当时还没有手机豆瓣app。 额,废话多了,总结一下: xml类似且支持js,css,可以很好的实现一些原生qt不好实现的动效,真的很方便很绚丽。所以,一般都是用xml写界面,用原生qt和c++实现逻辑方法,如打开文件,TCP,http(xml也可以,毕竟支持js)等。
佳朗 2016-12-23
  • 打赏
  • 举报
回复
恩对的,不过有些东东,qt和c++实现会高效(如读写本地文件之类的),有些东东是用js实现更便捷哈(如http,异步,图表相关)。当然都是在不影响性能的情况下,自主择取。
Little柯南 2016-12-23
  • 打赏
  • 举报
回复
引用 11 楼 liujunpen 的回复:
其实,用qt搞android,一般都是从相关技术转过来(如js前端,qt 开发)。因为这样毕竟入手快,而且多平台。 之前,用其搞过项目,后来因为内存增长太厉害,就弃了。 本人开始学习时,资料很少。网上看了些,就自己练手高了个豆瓣fm,成功运行在手机上,当时还没有手机豆瓣app。 额,废话多了,总结一下: xml类似且支持js,css,可以很好的实现一些原生qt不好实现的动效,真的很方便很绚丽。所以,一般都是用xml写界面,用原生qt和c++实现逻辑方法,如打开文件,TCP,http(xml也可以,毕竟支持js)等。
你的意思还是UI与后台分开,强调UI用xml,借鉴MVC设计方式原理
yyxmm 2016-12-05
  • 打赏
  • 举报
回复
还是用java来做吧,qt局限性太多,做的人太少,遇到问题找都找不到
jiqiang01234 2016-09-13
  • 打赏
  • 举报
回复
引用 7 楼 kuyucman 的回复:
原生的,用android api + jna/jni,通常是更佳选择
把性能有要求的部分放在ndk层,界面逻辑还是原生的java比较好。可以使用protobuf等库来打通java层和ndk层的调用,接口比直接写native方法简洁
Little柯南 2016-09-13
  • 打赏
  • 举报
回复
引用 4 楼 liukang325 的回复:
[quote=引用 2 楼 u010111033 的回复:] 有我来回答啊!哈哈 第一、如安卓原生使用Java开发一样,界面使用xml开发,采用MVC,视图、模型分离。Qt for Android其实也是使用脚本(这里是QML)来构建界面,功能方面采用C++与原Java是主要区别; 第二、如果你想对Qt开发安卓做详细了解,那么我给你以下推荐: 1、有三本书可以参考:《Qt on android核心编程》《Qt Quick核心编程》《Qt5编程入门》,第二本第三本讲的是QML,第一本讲的是使用Qt来开发Android,但是第一本基本内涵与普通介绍Qt的书籍没什么过大区别,只是多了构建android方式并加以应用; 2、可以在csdn学院看看,安晓辉版主的Qt on android视屏;
哈哈,谢谢你的回复!你说的这三本书,除了Qt Quick 讲QML的我没有看过外,其它两本我都看过了,《Qt on android核心编程》讲android的章节太少,而且不是很深,界面也不太适合android. 也许Qt android核心的东西就那么一点吧~[/quote] 个人以为,做QT开发,桌面GUI部分可以使用,其他讲究效率的、爬有坑的就别用了,做安卓开发,最好还是用谷歌亲儿子好些。至少他老爹还是把他当个宝,他依然建强
阳光柠檬_ 2016-09-12
  • 打赏
  • 举报
回复
第一次在论坛发贴,没人回~ 好尴尬
东莞某某某 2016-09-12
  • 打赏
  • 举报
回复
原生的,用android api + jna/jni,通常是更佳选择
东莞某某某 2016-09-12
  • 打赏
  • 举报
回复
qt写桌面应用也会遇到很多坑,玩玩可以,如果是产品,我觉得还是选择原生的
阳光柠檬_ 2016-09-12
  • 打赏
  • 举报
回复
引用 3 楼 xzhlksh 的回复:
新手路过,我们实验室的师兄之前一直都是C++,最近写Android果断转QML了。。。 其实就算是桌面应用,QML能实现的效果也要比C++要好得多吧
我对QML不太了解,写桌面程序也都是用C++开发,感觉效果够用了。 不过android可能用QML更好吧,不过还感觉不到相比原生JAVA,QML开发android的优势
阳光柠檬_ 2016-09-12
  • 打赏
  • 举报
回复
引用 2 楼 u010111033 的回复:
有我来回答啊!哈哈 第一、如安卓原生使用Java开发一样,界面使用xml开发,采用MVC,视图、模型分离。Qt for Android其实也是使用脚本(这里是QML)来构建界面,功能方面采用C++与原Java是主要区别; 第二、如果你想对Qt开发安卓做详细了解,那么我给你以下推荐: 1、有三本书可以参考:《Qt on android核心编程》《Qt Quick核心编程》《Qt5编程入门》,第二本第三本讲的是QML,第一本讲的是使用Qt来开发Android,但是第一本基本内涵与普通介绍Qt的书籍没什么过大区别,只是多了构建android方式并加以应用; 2、可以在csdn学院看看,安晓辉版主的Qt on android视屏;
哈哈,谢谢你的回复!你说的这三本书,除了Qt Quick 讲QML的我没有看过外,其它两本我都看过了,《Qt on android核心编程》讲android的章节太少,而且不是很深,界面也不太适合android. 也许Qt android核心的东西就那么一点吧~
xzhlksh 2016-09-12
  • 打赏
  • 举报
回复
新手路过,我们实验室的师兄之前一直都是C++,最近写Android果断转QML了。。。 其实就算是桌面应用,QML能实现的效果也要比C++要好得多吧
Little柯南 2016-09-12
  • 打赏
  • 举报
回复
有我来回答啊!哈哈 第一、如安卓原生使用Java开发一样,界面使用xml开发,采用MVC,视图、模型分离。Qt for Android其实也是使用脚本(这里是QML)来构建界面,功能方面采用C++与原Java是主要区别; 第二、如果你想对Qt开发安卓做详细了解,那么我给你以下推荐: 1、有三本书可以参考:《Qt on android核心编程》《Qt Quick核心编程》《Qt5编程入门》,第二本第三本讲的是QML,第一本讲的是使用Qt来开发Android,但是第一本基本内涵与普通介绍Qt的书籍没什么过大区别,只是多了构建android方式并加以应用; 2、可以在csdn学院看看,安晓辉版主的Qt on android视屏;

16,817

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧