O ponteiro de Michael para a implementação do Karma Machine realmente me apontou na direção certa. A chave é injetar o retângulo no cabeçalho para que ele seja um filho adequado. Isso pode ser feito com o método createObject () que Michael mencionou se você tiver o retângulo em um arquivo qml separado, ou você pode usar createQmlObject com uma string de QML.
Abaixo está um exemplo muito simplificado (usando Tabs, mas a mesma coisa é possível com um PageStack):
import QtQuick 2.0
import Ubuntu.Components 0.1
MainView {
id: mainView
width: units.gu(40)
height: units.gu(60)
Tabs {
id: tabs
Tab {
title: i18n.tr("Colored Header")
page: Page {
}
}
}
Component.onCompleted: {
tabs.tabBar.__styleInstance.headerTextSelectedColor = "white";
var component = Qt.createQmlObject(
'import QtQuick 2.0; Rectangle { anchors.fill: parent; z: -1; color: "#288369"; }',
tabs.header);
}
}