5

上部のメニュー項目画面 (type="6") とその下のテキスト入力画面 (type="5") で構成される複雑な UI を作成しようとしています。メニュー項目画面をテキスト項目画面とは別の画面に移動させたいのですが、テキスト項目画面を nextQuestionKey 属性に配置する必要があります。

下のコードのようにメニュー項目画面に制限をつけて試してみたのですが、バリデーターで「分岐は許可されていません」と表示されます。

制限をテキスト入力画面に移動してみました。バリデーターは、「最後にない複雑な画面のメニュー画面は、attributeType = 72の有効な事前定義された前方ナビゲーションの回答を提供する必要があります」と教えてくれます

<question key="15" type="6" backNavigationAllowed="true" sortAnswersByClientKey="false">
    <answer key="15_1" nextQuestionKey="16" clientKey="CK#15">
        <text>Scan barcode</text>
    </answer>
    <restriction nextQuestionKey="17" position="0">
        <condition>getAnswerValueByClientKey($answer:"15_1", "CK#15") != ""</condition>
    </restriction>
    <complex linearGroupId="InputAssetNumber" gridGroupId="InputAssetNumber" linearInnerScrollbar="false" gridInnerScrollbar="false" gridHorizontalLayout="false" linearPos="0" gridPosX="0" gridPosY="0" gridWidth="1" gridHeight="1" linearHeight="1" groupTitle="Input Asset number"/>
</question>

<question key="16" type="5" backNavigationAllowed="true" sortAnswersByClientKey="false">
    <answer key="16_1" nextQuestionKey="18" clientKey="CK#16" columnSizeType="ROWS">
        <text>Enter barcode manually</text>
    </answer>
    <answer key="16_2" nextQuestionKey="18" clientKey="CK#16" columnSizeType="ROWS">
        <text>Reason</text>
    </answer>
    <complex linearGroupId="InputAssetNumber" gridGroupId="InputAssetNumber" linearInnerScrollbar="false" gridInnerScrollbar="false" gridHorizontalLayout="false" linearPos="1" gridPosX="0" gridPosY="1" gridWidth="1" gridHeight="1" linearHeight="1"/>
</question>

誰かがこの問題の解決策を見つけるのを手伝ってくれたら幸いです。

4

1 に答える 1

3

これを実現する最も簡単な方法は、テキスト項目画面がメニュー画面を指すように画面の順序を変更することだと思います。複雑な UI では、必要に応じてメニューを一番上に表示できるため、ナビゲーションのシーケンスはそれに影響しません。メニュー画面で、質問キー 18 を指すデフォルトの回答を定義します。メニュー画面のクリック可能な回答は、質問 17 を指します。

デフォルトの回答機能については、 https ://devtools.movi​​lizer.com/confluence/display/DOC22/Default+Answer+feature+for+Image+Menu+screens を参照してください。

<question key="15" type="5" backNavigationAllowed="true" sortAnswersByClientKey="false">
  <answer key="15_1" nextQuestionKey="16" clientKey="CK#16" columnSizeType="ROWS">
    <text>Enter barcode manually</text>
  </answer>
  <answer key="15_2" nextQuestionKey="16" clientKey="CK#16" columnSizeType="ROWS">
    <text>Reason</text>
  </answer>
  <complex linearGroupId="InputAssetNumber" gridGroupId="InputAssetNumber" linearInnerScrollbar="false" gridInnerScrollbar="false" gridHorizontalLayout="false" linearPos="1" gridPosX="0" gridPosY="1" gridWidth="1" gridHeight="1" linearHeight="1"/>
</question>

<question key="16" type="6" backNavigationAllowed="true" sortAnswersByClientKey="false">
  <answer key="16_1" nextQuestionKey="17" clientKey="CK#17">
    <text>Scan barcode</text>
  </answer>
  <answer key="16_2" nextQuestionKey="18" clientKey="CK#18" attributeType="72">
    <text>default answer</text>
    <predefinedValue>X</predefinedValue>
  </answer>
  <complex linearGroupId="InputAssetNumber" gridGroupId="InputAssetNumber" linearInnerScrollbar="false" gridInnerScrollbar="false" gridHorizontalLayout="false" linearPos="0" gridPosX="0" gridPosY="0" gridWidth="1" gridHeight="1" linearHeight="1" groupTitle="Input Asset number"/>
</question>

これは、最初に複雑な UI に [OK] ボタンが表示されることを意味します。ユーザーが [OK] ボタンを押すと、クライアントは質問 18 に移動します。ユーザーが [バーコードのスキャン] ボタンを押すと、クライアントは質問 17 に移動します。

于 2015-03-25T14:41:53.657 に答える