私のフレックスモバイルプロジェクトには2つのビューがあります
- アンケートのリストです
- アンケートの質問のリストです
ビュー 1 のリストから調査を選択し、レコード ID をビュー 2 に渡して、ID に基づいてデータを照会します。
私が苦労しているのは、調査 ID を取得して、パラメーター化されたデータを取得する場所から 2 ページ目のアクション スクリプトに渡すことです。
すべてのヒントに感謝します。
マイページ1コード
<?xml version="1.0" encoding="utf-8"?>
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:surveynameservice="services.surveynameservice.*"
title="surveyMaster">
<fx:Script>
<![CDATA[
import mx.events.FlexEvent;
import spark.events.IndexChangeEvent;
protected function list_creationCompleteHandler(event:FlexEvent):void
{
getAllSurveynameResult.token = surveynameService.getAllSurveyname();
}
protected function surveySelected(event:IndexChangeEvent):void
{
// TODO Auto-generated method stub
var tmpObj:Object = new Object();
tmpObj.sID = list.selectedItem.surveyID;
tmpObj.sName = list.selectedItem.surveyName;
(this.parentDocument as cp_dbHomeView).rightNav.activeView.data=tmpObj;
}
]]>
</fx:Script>
<fx:Declarations>
<s:CallResponder id="getAllSurveynameResult"/>
<surveynameservice:SurveynameService id="surveynameService"/>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<s:List id="list" x="-1" y="0" width="171" height="100%" change="surveySelected(event)"
creationComplete="list_creationCompleteHandler(event)" labelField="surveyName">
<s:AsyncListView list="{getAllSurveynameResult.lastResult}"/>
</s:List>
</s:View>
マイページ2コード
<?xml version="1.0" encoding="utf-8"?>
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:surveyquestionsservice="services.surveyquestionsservice.*"
creationComplete="init()" title="{data.sID}">
<fx:Script>
<![CDATA[
import mx.events.FlexEvent;
import spark.components.DataRenderer;
public function init():void{
}
protected function list_creationCompleteHandler(event:FlexEvent):void
{
getSurveyQuestionsResult.token = surveyquestionsService.getSurveyQuestions(data);
}
]]>
</fx:Script>
<s:layout>
<s:VerticalLayout paddingTop="15" paddingBottom="15" paddingLeft="15" paddingRight="15" gap="5"
horizontalAlign="center" verticalAlign="top"/>
</s:layout>
<fx:Declarations>
<s:CallResponder id="getSurveyQuestionsResult"/>
<surveyquestionsservice:SurveyquestionsService id="surveyquestionsService"/>
</fx:Declarations>
<s:Label text="Click on a location on the left to explore!" visible="{data==null?true:false}"/>
<s:Label text="Information about {this.data.surveyID}" visible="{data!=null?true:false}"/>
<s:TextArea text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur accumsan felis ac tortor aliquam iaculis. Phasellus hendrerit viverra enim, sit amet scelerisque lectus dictum at. Aenean sodales nisi sed leo congue et porttitor ligula vehicula.
Pellentesque turpis massa, suscipit vel fermentum quis, dignissim sed ipsum. Nulla aliquet libero adipiscing risus lobortis eleifend quis at velit. Duis at leo urna.
Praesent facilisis faucibus neque, ut ullamcorper lacus gravida a. Donec vel iaculis sapien." width="90%" editable="false" visible="{data!=null?true:false}"/>
<s:List id="list" width="659" creationComplete="list_creationCompleteHandler(event)" click="init()"
labelField="questionDesc">
<s:AsyncListView list="{getSurveyQuestionsResult.lastResult}"/>
</s:List>
</s:View>