Oli*_*hel 12 application-development ubuntu-touch
我正在开发一个 qml-app,我想在按钮上放置图标。我想使用 ubuntu 标准图标来为我的应用程序获取真正的 ubuntu 外观。我怎样才能做到这一点?
官方的 Ubuntu Touch 图标主题称为 Ubuntu Mobile,可在ubuntu-mobile-icons
包中安装。以下是提供的图标示例:
要在代码中使用图标,只需使用图标的路径。例如,要在工具栏按钮中设置图标,请执行类似以下操作:
ToolbarButton {
text: i18n.tr("Refresh")
iconSource: Qt.resolvedUrl("/usr/share/icons/ubuntu-mobile/actions/scalable/reload.svg")
}
Run Code Online (Sandbox Code Playgroud)
为了避免一遍又一遍地重复根路径,我通常使用一个调用的小函数getIcon
来返回图标的实际路径:
function getIcon(name) {
return Qt.resolvedUrl("/usr/share/icons/ubuntu-mobile/actions/scalable/" + name + ".svg")
}
Run Code Online (Sandbox Code Playgroud)
前面的示例将是:
ToolbarButton {
text: i18n.tr("Refresh")
iconSource: getIcon("reload")
}
Run Code Online (Sandbox Code Playgroud)
我才刚刚开始涉足 QML,但看起来 Ubuntu SDK 提供了一种从主题(图标组件)访问图标的方法。这是一个 Hello Worldish 示例:
\n\nimport QtQuick 2.0\nimport Ubuntu.Components 0.1\n\nMainView {\n id: root\n objectName: "mainView"\n\n width: units.gu(50)\n height: units.gu(75)\n\n property real margins: units.gu(2)\n property real buttonWidth: units.gu(9)\n\n Page {\n title: i18n.tr("Icons!")\n\n Column {\n\n \xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0anchors {\n \xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0fill: parent\n \xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0margins: root.margins\n \xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0}\n \xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0spacing: units.gu(1)\n\n Icon {\n name: "call-start"\n width: 48\n height: 48\n }\n\n Icon {\n name: "call-stop"\n width: 48\n height: 48\n }\n\n Icon {\n name: "find"\n width: 48\n height: 48\n }\n\n }\n }\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n这给你:
\n\nAFAICT,这实际上似乎并不支持 Freedesktop 图标主题规范提供的全套图标......
\n 归档时间: |
|
查看次数: |
5831 次 |
最近记录: |