如何在Ubuntu手机上使用QML主题化

Ubuntu界面工具包文档介绍了使用类似CSS语法的 QML元素主题化。听起来很令人惊叹,但我无法开始使用它。我尝试了很多次,但是我想可能是因为我缺少一些基本问题的答案:
  1. 有关如何放置.qmltheme文件以及如何命名它们是否有任何规则?
  2. 引用是如何实现的?在.qmltheme文件中设置的样式规则会自动附加到相应名称设置的元素上吗?还是我必须在.qmltheme文件中以某种方式设置对包含QML元素的文件的引用,或者反过来,或者两者都要设置?
也许我没有理解文档的重要部分。英语不是我的母语,因此这份特定的文档对我来说很难理解。
1个回答

很遗憾,文档没有解释应用程序应该如何进行主题设置,尤其是这部分还没有完全实现。不过,应用程序仍然可以加载主题文件,在其中修改系统定义的样式并指定自己的样式。
  1. 目前还没有明确规定应用程序特定的主题文件应该放在哪里。但是,它应该放在应用程序知道并且可以访问的地方。可以使用Theme.loadTheme(url)函数来加载主题,其中url是指向.qmltheme文件的URL/URI。例如,假设主题文件相对于应用程序文件夹在"theme"文件夹中,你应该有Theme.loadTheme(Qt.resolvedUrl("./theme/mytheme.qmltheme"))

  2. 我不确定我理解你在这里所说的"reference"是什么意思。你是指一个样式化组件如何知道要使用哪个样式,还是指提供视觉效果的QML元素将如何与样式化组件关联起来?


1类型错误:对象UCTheme(0x7fc01c4ce980)的属性'loadTheme'不是一个函数。这是一个已经结束的实验,还是我们应该期待将来能够正常工作?唯一剩下的文档似乎只有http://people.canonical.com/~dpm/sdk-docs/html.orig/theming-components.html - andrewsomething