Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt QML,编码一次,部署两次_Qt_User Interface_Mobile_Qml_Desktop - Fatal编程技术网

Qt QML,编码一次,部署两次

Qt QML,编码一次,部署两次,qt,user-interface,mobile,qml,desktop,Qt,User Interface,Mobile,Qml,Desktop,我正在用QML创建一个应用程序。起初它只用于桌面,但我决定也包括Android设备 我正在努力解决的问题是如何处理不同的平台。现在,我有一个单独的类,提供关于屏幕比例、平台(移动、桌面)方向等的信息 为每个平台提供最接近本机用户体验的最佳方法是什么 如何处理这样的情况 移动 StackView,共2页 ListView占用整个屏幕空间 单击ListView中的对象将导航到具有 附加信息 桌面 无堆栈视图 仅使用300像素的ListView 应提供有关列表中当前选定元素的其他信息 在List

我正在用QML创建一个应用程序。起初它只用于桌面,但我决定也包括Android设备

我正在努力解决的问题是如何处理不同的平台。现在,我有一个单独的类,提供关于屏幕比例、平台(移动、桌面)方向等的信息

为每个平台提供最接近本机用户体验的最佳方法是什么

如何处理这样的情况

移动

  • StackView,共2页
  • ListView占用整个屏幕空间
  • 单击ListView中的对象将导航到具有 附加信息
桌面

  • 无堆栈视图
  • 仅使用300像素的ListView
  • 应提供有关列表中当前选定元素的其他信息 在ListView旁边的文本区域中可见
根据计算出的屏幕比例或给定设备的像素密度设计可伸缩UI是一种解决方案。但是,这种手机界面在桌面上看起来很糟糕。你能想象安卓Gmail应用程序在PC上运行吗

<>我看到的解决方案是尽可能地将逻辑放入C++中,并在QML中创建移动平台和桌面平台的轻量级布局。 在您看来,什么是针对多个设备的最佳方式。我应该为移动设备创建可伸缩的用户界面,并在桌面上使用它,只是“处理它”,还是应该牺牲更多的时间为每个平台创建用户界面,以使其在任何地方都对用户友好

我应该为移动设备创建可伸缩的用户界面,并在桌面上使用它,只是“处理它”,还是应该牺牲更多的时间为每个平台创建用户界面,以使其在任何地方都对用户友好

这个问题相当主观,我们还没有看到讨论中的UI,但在我看来,您应该牺牲更多的时间,为桌面和移动设备创建一个体面的UI。这是假设应用程序的桌面版本有足够的内容和/或功能来保证它

<>我看到的解决方案是尽可能地将逻辑放入C++中,并在QML中创建移动平台和桌面平台的轻量级布局。
这是正确的方法。QML非常容易编写,而且只要保持简单,就非常容易维护。QT快速控制是通过这种方式来学习的,这就是为什么要创建:尽可能多地使用C++和JavaScript,昂贵的绑定,<代码>加载程序> /代码> s等。接下来的设计系统将为您提供一些工具来决定如何处理不同的平台/形状因素。有一个很好的库qml material,它已经提供了很多功能、组件和样式。如果不是这样的话,在实现你自己的设计系统之前,试着接受任何其他坚实的设计系统。我已经对你的问题投了赞成票,至少是因为它的标题:)