2016-03-22 4 views
1

Мы пытаемся создать большое меню в movilizer для поддержки всех наших опций, при этом мы используем сетевой интерфейс сетки для поддержки более крупных устройств.Как развернуть меню, которое находится в сложной сетке UI

Поскольку мы используем комплексный UI сетки, в настоящее время мы имеем 3 текстовых поля меню и 2 в нашей комплексной сетке. Однако мы не можем использовать меню для перехода в разные перемещения, которые вызываются после нажатия кнопок в этих меню.

<question key="Q003" type="6"> 
    <answer attributeType="14" 
     key="A003_1" 
     nextQuestionKey="Q407" 
     <text>menu1button</text> 
    </answer> 
    <answer attributeType="72" 
     key="A003_5" 
     nextQuestionKey="Q004"> 
     <predefinedValue>X</predefinedValue> 
    </answer> 
    <complex linearGroupId="Information" gridGroupId="gridMenu" gridHorizontalLayout="false" linearPos="1" gridPosX="0" gridPosY="1" groupTitle="menuGrid"/> 
</question> 

<question key="Q004" type="6"> 
    <answer attributeType="14" 
     key="A004_1" 
     nextQuestionKey="Q408" 
     <text>menu2button</text> 
    </answer> 
    <answer attributeType="72" 
     key="A004_3" 
     nextQuestionKey="Q005"> 
     <predefinedValue>X</predefinedValue> 
    </answer> 
    <complex linearGroupId="Information" gridGroupId="gridMenu" gridHorizontalLayout="false" linearPos="2" gridPosX="1" gridPosY="1" groupTitle="menuGrid"/> 
</question> 

Этот пример отрывок из нашего кода будет сгенерировано говоря ветвление ошибки не допускаются вопрос Q003, однако нам нужно это отдельное меню-х.

Есть ли способ обойти эту проблему, не создавая разные перемещения для каждого меню?

Заранее благодарен!

ответ

0

вы можете добиться этого только с помощью сценариев MEL. Основная идея заключается в том:

  1. вы сохраните выбор для всех меню, которые находятся в сложном интерфейсе с помощью сценариев MEL
  2. все ответы в первой Q в комплексной линии UI на второй вопрос в сложном интерфейсе
  3. все ответы на второй Q в комплексной линии UI на третий вопрос комплексного UI ... и так далее
  4. последний вопрос о сложных связях UI на экране эпсилон
  5. экран эпсилон использует ограничения которые проверяют выбор различных меню на бранч ч расход соответственно

Это может выглядеть примерно так (упрощенно), Q003:

<question key="Q003" type="6"> 
<answer key="A003_1" 
     nextQuestionKey="Q004"> 
    <text>menu1button</text> 
</answer> 
<answer attributeType="72" 
     key="A003_DEFAULT" 
     nextQuestionKey="Q004"> 
    <predefinedValue>X</predefinedValue> 
</answer> 
<onEnterAssignment> 
    $local:selections = null; 
</onEnterAssignment>     
<onLeaveOkPersistAssignment> 
    $local:selections["Q003"] = getQuestionKey(); 
</onLeaveOkPersistAssignment> 
<complex linearGroupId="Information" gridGroupId="gridMenu" gridHorizontalLayout="false" linearPos="1" gridPosX="0" gridPosY="1" groupTitle="menuGrid"/> 
</question> 

Q004:

<question key="Q004" type="6"> 
<answer key="A004_1" 
     nextQuestionKey="QEPS"> 
    <text>menu2button</text> 
</answer> 
<answer attributeType="72" 
     key="A004_DEFAULT" 
     nextQuestionKey="QEPS"> 
    <predefinedValue>X</predefinedValue> 
</answer> 
<onLeaveOkPersistAssignment> 
    $local:selections["Q004"] = getQuestionKey(); 
</onLeaveOkPersistAssignment> 
<complex linearGroupId="Information" gridGroupId="gridMenu" gridHorizontalLayout="false" linearPos="2" gridPosX="1" gridPosY="1" groupTitle="menuGrid"/> 
</question> 

И QEPS (что делает разветвление, очень упрощенный) :

<question key="QEPS" type="41"> 
<answer key="AEPS_1" 
     nextQuestionKey="END"/> 
<restriction position="0" nextQuestionKey="Q003"> 
    <condition>$local:selections["Q003"] != $answer:"A003_DEFAULT" ?OR $local:selections["Q004"] != $answer:"A004_DEFAULT"</condition> 
</restriction> 
</question> 
+0

Это действительно сработало, спасибо – Sinshz