Steuerelemente abmessen
Mit der Aktion "Steuerelemente abmessen" (Abbildung unten) erhalten Sie die Mindestbreite der angegebenen Steuerelementart (z.B. Schaltfläche oder Beschriftung) in Pixel, wenn der in der ersten Einstellung definierte String der Anzeigetext des Steuerelements ist. Mit Hilfe dieser Aktion können Sie die Steuerelementbreite für eine Gruppe von Strings ermitteln und diese Informationen anschließend in Ihrem Design verwenden. So könnten Sie z.B. die Breite aller Schaltflächen in einer Spalte eruieren und als Spaltenbreite anschließend den Wert der breitesten Schaltfläche definieren.
Textstrings von Steuerelementen
Da die Steuerelementbreite von der Textgröße abhängt, müssen Sie in der ersten Einstellung den String angeben, der auf das Steuerelement platziert werden soll. Wenn Sie die Breite mehrerer Steuerelemente mit unterschiedlichem Text ermitteln möchten, müssen Sie alle diese Texte als String-Elemente einer Sequenz angeben. Der Rückgabewert ist eine Sequenz, die die Breite der einzelnen Strings enthält. Diese Sequenz wird in der Variablen MT_MeasureControls gespeichert. So haben wir etwa in der Abbildung oben eine Sequenz von zwei Strings angegeben: ("Altova Product", "Go to Product Description"). Diese Strings müssen auf den Steuerelementen im Design nicht wirklich vorhanden sein. Der Rückgabewert enthält zwei Zahlenwerte, nämlich die Breite der beiden Strings. Sie könnten jeden beliebigen String zur Sequenz hinzufügen, um die Steuerelementbreite für diesen String zu eruieren.
Textparameter
Die zweite Einstellung muss ein XPath-Zuordnungsausdruck sein, der die Parameter, für die die Breitenberechnung durchgeführt wird, angibt. Die Parameter enthalten Informationen wie, ob das abgemessene Steuerelement eine Beschriftung oder eine Schaltfläche ist, ob die Textgröße klein oder mittel ist oder ob der Text fett oder nicht fett ist. Die Schlüssel der Zuordnung und deren zulässige Werte sehen Sie in der Liste unten. Der einzige obligatorische Schlüssel ist "Control Kind". Wenn kein Text angegeben wird, wird sein Standardwert verwendet. So wird z.B. in der Abbildung oben die Breite von Schaltflächen, auf denen der Text mit den Standardwerten der jeweiligen Parameter angezeigt wird, gemessen. Der XPath-Ausdruck lautet: map{"Control Kind":"Button"}.
Schlüssel | Wert | Standardwert |
---|---|---|
Control Kind | "Label"|"Button" | Obligatorischer Wert |
Text Size | "small"|"medium"|"large" | "medium" |
Unit | "px"|"dp"|"sp"|"". Siehe Größen: Pixel, DPI, DP, SP. | "px" |
Bold Text | "true"|"false" | "false" |
Italic Text | "true"|"false" | "false" |
Underline Text | "true"|"false" | "false" |
Button Image | Jede beliebige der Button Image-Optionen (z.B. + oder - oder > oder Share | Keiner |
Button Background | "transparent"|"not_transparent" | "not_transparent" |
Das Argument Parameters ist eine Schlüssel-Wert-Zuordnung, die die Eigenschaften des Steuerelements definiert. Die verfügbaren Schlüssel und Werte sehen Sie in der Liste unten. Die Ganzzahl, die zurückgegeben wird, ist die Mindestbreite des Steuerelements in Pixel, wenn der angegebene Text-String (erste Einstellung) mit den im Argument Parameters definierten Eigenschaften angezeigt wird. Anhand dieses Werts können anschließend andere im Zusammenhang mit diesem Steuerelement stehenden Eigenschaften, wie z.B. die Breite von Tabellenspalten, in denen das Steuerelement vorkommt, berechnet und definiert werden.
Der Rückgabewert und die Variable "MT_MeasureControls"
Die Aktion gibt eine Sequenz von Zahlen zurück, die automatisch in der Variablen MT_MeasureControls gespeichert wird. MT_MeasureControls kann in den XPath-Ausdrücken von Aktionen verwendet werden. Da es sich bei den Elementen in der zurückgegebenen Sequenz um Zahlen handelt, können Sie die größte Steuerelementbreite mit Hilfe der max()-Funktion ermitteln (z.B. max(MT_MeasureControls)). Eine weitere nütztliche Funktion ist die serialize()-Funktion, mit der die komplette Sequenz angezeigt werden kann.
Wichtige Punkte
Beachten Sie die folgenden Punkte:
•Sie können mit jeder Aktion nur die Breite jeweils einer einzigen Steuerelementart ermitteln. Um die Breite einer anderen Steuerelementart zu eruieren, rufen Sie die Aktion ein zweites Mal mit einem neuen Steuerelementart-Parameterwert auf.
•Mit dieser Aktion ist dieselbe Funktionalität wie mit der Funktion mt-control-width() implementiert. Ein wichtiger Unterschied ist, dass die Funktion nicht für die Web Client-Darstellung verwendet werden kann, während die Aktion für Web Clients verwendet werden kann.
MobileTogether-Erweiterungsfunktionen
MobileTogether enthält eine Reihe von XPath-Erweiterungsfunktionen, die speziell für die Verwendung in MobileTogether-Designs erstellt wurden. Einige davon können bei bestimmten Aktionen sehr nützlich sein. So erhalten Sie etwa mit mt-available-languages() die Sprachen, in denen die Lösung zur Verfügung steht. Diese Funktion könnte z.B. mit der Aktion Meldungsfeld verwendet werden. Wenn eine Funktion für diese Aktion besonders relevant ist, ist sie unten aufgelistet. Eine vollständige Liste aller Erweiterungsfunktionen und mit Beschreibungen finden Sie im Kapitel MobileTogether-Erweiterungsfunktionen.