2012-06-27 2 views
1

извините за плохой английский. Я пролежал часами, но я не мог найти решения для своей проблемы.Как перейти к динамическому просмотру с помощью ArrayList

Я хочу, чтобы перейти к моему представлению, чтобы получить имя вида от arrayList в DataProvider.

Как я могу получить URL-адрес щелкнутого элемента и перемещаться в виде представления. спасибо ..

<s:List id="listMenu" top="0" bottom="0" left="0" right="0" height="100%" width="100%" 
click="navigator.pushView(listMenu.url as View)"> 
<s:dataProvider> 
    <s:ArrayList> 
     <fx:Object name="Title1" detail="Detail1" src="@Embed('../media/graphics/credit-card.png')" url="View1" /> 
     <fx:Object name="Title2 Sorgulama" detail="Detail2" src="@Embed('../media/graphics/IMEI.png')" url="View2" />  
    </s:ArrayList> 
</s:dataProvider> 
<s:itemRenderer> 
    <fx:Component> 
     <s:IconItemRenderer labelField="name" messageField="detail" iconField="src" iconWidth="64" iconHeight="64" height="68" />    
    </fx:Component> 
</s:itemRenderer> 

+0

Вы говорите о мнениях Flex Mobile? Или вы должны иметь в виду другой компонент? – JeffryHouser

+0

Привет, я говорю об обычных стандартах Flex Mobile. Я хочу получить динамическое представление. – user1485689

ответ

0

Здесь вы идете -

активы/значки/FB.png:

enter image description here

активы/значки/GG.png :

enter image description here

просмотров/Home.mxml:

<?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"> 

    <fx:Script> 
     <![CDATA[ 
      import mx.core.BitmapAsset; 
      import mx.events.FlexEvent; 

      import spark.components.SplitViewNavigator; 
      import spark.components.ViewNavigator; 
      import spark.core.SpriteVisualElement; 
      import spark.events.IndexChangeEvent; 

      [Embed(source="assets/icons/FB.png")] 
      private static const FB_CLASS:Class; 
      [Embed(source="assets/icons/GG.png")] 
      private static const GG_CLASS:Class; 

      private static const FB_ICON:BitmapAsset = new FB_CLASS() as BitmapAsset; 
      private static const GG_ICON:BitmapAsset = new GG_CLASS() as BitmapAsset; 

      protected function handleChange(event:IndexChangeEvent):void { 
       var item:Object = login.selectedItem; 
       navigator.pushView(item.view, item.str); 
      } 
     ]]> 
    </fx:Script>  

    <s:List width="100%" height="100%" id="login" change="handleChange(event);"> 
     <s:dataProvider> 
      <s:ArrayCollection> 
       <fx:Object icon="{FB_ICON}" view="{FB}" label="Play at" msg="Facebook.com" /> 
       <fx:Object icon="{GG_ICON}" view="{GG}" label="Play at" msg="Google+" /> 
      </s:ArrayCollection> 
     </s:dataProvider> 
     <s:itemRenderer> 
      <fx:Component> 
       <s:IconItemRenderer labelField="label" iconField="icon" messageField="msg"/> 
      </fx:Component> 
     </s:itemRenderer> 
    </s:List> 
</s:View> 

App.mxml:

<?xml version="1.0" encoding="utf-8"?> 
<s:ViewNavigatorApplication 
    xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:s="library://ns.adobe.com/flex/spark" 
    firstView="views.Home"> 
</s:ViewNavigatorApplication> 

просмотров/FB.mxml и просмотров/GG. mxml, на которые ссылаются выше, - которые будут созданы вашим self ;-)

+0

Большое вам спасибо, меняя url = "View1" на url = "{View1}", решили мои проблемы. – user1485689