Як використовувати тематизацію в QML для Ubuntu Phone


10

Документальні документи Ubuntu Interface Toolkit Документи Документація для елементів 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-елементи, що надають візуальні зображення, будуть пов’язані зі стильовим компонентом?


1
TypeError: Property 'loadTheme' of object UCTheme(0x7fc01c4ce980) is not a functionЦе експеримент, який досяг свого кінця, чи слід очікувати, що це спрацює в майбутньому? Єдині залишки документів здаються people.canonical.com/~dpm/sdk-docs/html.orig / ...
andrewsomething
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.