{lang: 'de'}
Flashhilfe.de - Flash Community

itemCreationPolicy funktioniert nicht [Flex 4]

 


AntwortenRegistrieren Seite1  

emotion#1
Benutzerbild von emotion
Beiträge: 191
Registriert: Jun 2008

02.06.2011, 13:14

Hallo Leute

ich würde gerne auf ein Objekt zugreifen, welches im Start-State aber noch nicht zur Verfügung steht.
Mit "itemCreationPolicy = immediate" versuche ich mir das Objekt aber schon beim Start der Applikation zur Verfügung zu stellen. Das Objekt wird aber trotzdem erst beim Eintritt in den zweiten
State initialisiert.
Ich weiss das es andere Lösungswege gibt, aber ich würde gerne die Eigenschaft"itemCreationPolicy" verstehen.
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?xml version="1.0" encoding="utf-8"?>
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
       xmlns:s="library://ns.adobe.com/flex/spark"
       xmlns:mx="library://ns.adobe.com/flex/mx"
       creationComplete="init()">
   
   <s:states>
      <s:State name="State1"/>
      <s:State name="searchState"/>
   </s:states>
   
   <fx:Declarations>
      
      <s:ArrayCollection id="contacts">
         <fx:Object name="London" e164="7001" />
         <fx:Object name="New York" e164="7002" />
         <fx:Object name="Sidney" e164="7003" />
         <fx:Object name="Singapur" e164="7004" />
         <fx:Object name="San Francisco" e164="7005" />
         <fx:Object name="Tokio" e164="7006" />
         <fx:Object name="Seoul" e164="7007" />
         <fx:Object name="Dubai" e164="7008" />
      </s:ArrayCollection>
      
   </fx:Declarations>
   
   <fx:Script>
      <![CDATA[
         import com.nbilyk.utils.KineticScrollManager;
         
         private var ksm:KineticScrollManager;
         
         private function init():void
         {
              ksm = new KineticScrollManager(contactList.scroller.viewport);
           }
         
      ]]>
   </fx:Script>
   
   <s:BorderContainer y="704.25" width="358" height="40" borderWeight="3" borderColor="#A09F9F" horizontalCenter="0" click="currentState='searchState'" y.searchState="394.25" horizontalCenter.searchState="0">
      <mx:Image x="1.25" y="0.75" source="file:/Users/kilian_baumann/Desktop/phone.png" width="31" height="32"/>
      <s:Label x="36" y="1.75" text="Search for Site" fontSize="19" fontWeight="bold" width="280" height="30" textAlign="center" verticalAlign="middle"/>
   </s:BorderContainer>
   
   <s:BorderContainer includeIn="searchState" itemCreationPolicy="immediate" y="430.75" width="358" height="170" borderWeight="3" borderColor="#A09F9F" horizontalCenter="0">
      <s:List id="contactList" dataProvider="{contacts}" labelField="name" y="1" width="321" height="163" borderVisible="false" fontSize="19" textAlign="left" horizontalCenter="0"/>
   </s:BorderContainer>
   
</s:Group>


Danke und Gruss
emotion
Schlagwörter: itemCreationPolicy
badskill#2
Benutzerbild von badskillFlashhilfe.de Moderator
Beiträge: 5285
Wohnort: Bernau (bei Berlin)
Registriert: Nov 2002

06.06.2011, 12:55

Hi,
dein Bordercontainer mit den Items wird erstmalig in State "searchState" erstellt. Vorher nicht.
ActionScript:
1includeIn="searchState"

Erst dann werden auch u.a. die ItemRenderer erstellt.
Wenn alles sofort erstellt werden soll, nimm das "includeIn...." raus und schreib dafür das:
ActionScript:
1visible.searchState="true"

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Ein Lob an die Admins [Flash CS5] 08.05.2022 - Indy_Crossover
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2024 Sebastian Wichmann - Flashhilfe.de