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

Jos*_*tze 10 application-development qml ubuntu-touch

Ubuntu 接口工具包文档记录了 QML 元素的主题化,其语法与 CSS 非常相似。这对我来说听起来很棒,但我无法开始使用它。我尝试了很多,但我想我错过了一些基本问题的答案:

  1. 是否有关于放置 .qmltheme 文件的位置以及如何命名它们的任何规则?
  2. 参考是怎么做的?我在 .qmltheme 文件中设置的样式规则会自动附加到具有相应名称设置的元素吗?或者我是否必须以某种方式将 .qmltheme 文件中的引用设置为包含 QML 元素的文件,或者反过来,或者两者兼而有之?

也许我没有理解文档的一个重要部分。英语不是我的母语,因此我很难获得这个特定的文档。

小智 4

不幸的是,文档没有解释应用程序应如何主题化,特别是这部分尚未完全实现。但是,应用程序仍然可以加载主题文件,在其中更改系统定义的样式并指定自己的样式。

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

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