如何在QML中为Ubuntu Phone使用主题


10

Ubuntu Interface Toolkit文档以与CSS非常相似的语法记录了QML Elements的主题。这对我来说听起来很棒,但我无法开始。我已经尝试了很多,但是我想我缺少一些基本问题的答案:

  1. 是否存在有关.qmltheme文件放置位置以及如何命名的规则?
  2. 参考如何完成?我在.qmltheme文件中设置的样式规则是否会自动追加到设置了相应名称的元素上?还是我必须以某种方式在.qmltheme文件中设置对包含QML元素的文件的引用,或者反过来,还是两者兼而有之?

也许我不了解文档的重要部分。英语不是我的母语,因此我很难获得此特定文档。

Answers:


4

不幸的是,文档没有说明应如何设置应用程序主题,特别是该部分尚未完全实现。但是,应用程序仍可以加载主题文件,在这些主题文件中,它们可以更改系统定义的样式并指定自己的样式。

  1. 还没有将特定于应用程序的主题文件放在何处的特定规则。但是,它应该位于应用程序知道并且可以访问的位置。可以使用Theme.loadTheme(url)函数来加载主题,其中url.qmltheme文件的URL / URI 。例如,假设主题文件位于相对于应用程序文件夹的“ theme”文件夹中,Theme.loadTheme(Qt.resolvedUrl("./theme/mytheme.qmltheme"))

  2. 我不确定我在这里理解您对“参考”的意思。您是指样式化的组件如何知道要使用哪种样式,还是指提供视觉效果的QML元素如何链接到样式化的组件?


1
TypeError: Property 'loadTheme' of object UCTheme(0x7fc01c4ce980) is not a function这是一个即将结束的实验,还是我们希望该实验将来能够成功?该文档的唯一残存似乎people.canonical.com/~dpm/sdk-docs/html.orig/...
andrewsomething
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.