Flex :: Initialization Order Of Static Variables In Flex Causing Bug?
May 10, 2011
I've got a component written for my app by a third party developer and am trying to integrate it, but I've found a bug that seems like it's either a compiler bug, or there's something with how Flex and static variables work that I wasn't aware of.Basically, I have this:
public class ModeChangeController {
public static const DISPLAY_MODE:String = "DisplayMode";
}[code]...
If I use //V2 (i.e. comment out V1), a bug occurs at the startup of the application (some TextFields are uneditable and contains no text), but with //V1 and not V2, it works fine. If I comment out both, that also works fine (I don't get the TextField bug).It took me a while to figure out that it was that static const String that was causing the issue, but I'm still not sure why or if there's something I can do about it except for just moving the DISPLAY_MODE to Events (which is what I've done at the moment, but it's not a particularly nice solution).There are no errors in the log. The order of the includes in my BorderContainer code doesn't matter. I've googled for "as3/flex static initialization order" but haven't found anything.
Clarification: showInitialView() never gets called. It doesn't get there before the other bug shows up. Just having the V2 line there causes the problem.
Update: I've fixed my problem with the TextInput strings not showing: Turns out that adding the component caused the Tahoma font to not show up. However, setting the font-weight to bold fixed that problem, or switching to Arial. With that said, the original question still stands, because when I ran it without V2, it found Tahoma with normal font-weight.
View 1 Replies
Similar Posts:
Oct 25, 2010
I am loading a component which makes a HTTPService call to get data that will then be used to set certain variables in the component. I make the HTTPService call in an init() function (for the initialization event) and then set the variables according to the data received in the HTTPService result handler. However, the variables are still null at both the initialize stage and at the creationComplete stage. If I try and read the variables in a creationComp() function (for the creationComplete event), those variables are still null. Is this correct?
I guess I don't understand the flex initialization cycle very well. When are those variables actually set and available to be used? I need to manipulate those variables automatically after the component loads. Is there an event that comes after creationComplete that is appropriate or some other way to approach this? I am using Flex 3.
View 2 Replies
Sep 3, 2011
to point out some good tutorials on creating applications in flex that are don't have UI's?Actually, it looks like all I really need to know is how to call afunction upon initialization of the flash object. I tried the creationComplete attribute, but it doesn't work in browser.
View 2 Replies
Dec 16, 2010
When I set a breakpoint and debug my application, Flash Builder 4 is not displaying static variables within the variables window. I'm using flash builder 4 to execute flex unit tests on one of my AS3 classes. I set a static variable within the [Before] function, which is accessed in each of the tests. I've set a breakpoint within one of the tests to see why it is failing, but I notice that static variables don't appear when I expand the 'this' object within the variables window. (In this case my static variable is the only variable associated with the class, so the only object in the variables window is the "this" object). How to make static variables appear in the variables window?
View 2 Replies
Sep 16, 2010
I work mainly in C++, and at work we use this awesome autonomous singleton pattern where you automatically add statically instantiated classes to some global list. If you're familiar with c++, imagine something ala:
class CuteSingleton : public ISomeInterface
{
*** stuff ***[code]...
So basically, CuteSingleton is instantiated at DLL load time and added to a global list of ISomeInterface interfaces. This is really powerful because it lets us rapidly prototype tons of code without polluting our existing codebase by having to include these prototype files, instantiating classes like CuteSingleton in a big initializer list somewhere, etc.I've been trying to figure out how to do something similar in actionscript for a few days now and I'm coming up empty handed. All I want to do is have this code instantiate this class without having to reference it in some other files:
package EntitySystem
{
public class EntityManager extends AutoGameSystem [code].............
View 4 Replies
Jan 26, 2010
Once you load an actionscript page from scratch (in my case loading XML data from a file, initializing various other elements in a fairly time consuming way) if you navigate away from that page and then return to it, (via the browser 'back' key for example) is their a way to forego the previous initialization and just immediately bring up the previous Actionscript page in its fully initialized state.
View 2 Replies
Feb 22, 2011
Following error is arising if I use NavigatorContent in Repeater. Is there a way to initialize image and lable on which I am encountering following error: Unable to generate initialization codewithin Repeater, due to id or databinding on a component that is not a visual child.
Code:
<mx:Repeater id="rep" dataProvider="{usersArray}">
<s:NavigatorContent width="100%" height="100%" label="{rep.currentItem.name}" >
[code]....
View 1 Replies
Dec 20, 2011
I need to completely initialize a custom component in my Flex app (i.e. I should be able to access it from action script and get its properties and its children etc), But I do not want to add it to the display or make it visible. I have tried to add it to my visible component, but keep it visible, but often many of its properties are set only when it is drawn, so i don't get what i need. Is there a way to add a custom component to some sort of 'Virtual' display, that is not visible to the user?
View 3 Replies
Mar 3, 2011
My Flex application (SWF) initialization takes 25 second to load 1.6mb SWF in widescreen monitor. The same SWF loads pretty fast (3 Sec) in Flat panel monitor 1024x768 resolution. What is the reason for +/- in rendering speed , +/- in CPU utilization on different monitors , screen resolution.
note: my internet sepped is 10+ mbps broadband.
View 1 Replies
May 27, 2011
I am trying to write a simple multicore PureMVC helloword. I am getting Error: multitonKey for this Notifier not yet initialized!
[Code]....
View 1 Replies
Jun 7, 2011
I have a Spark list with a customItemRenderer that is taking a good 3 seconds to initialize with just 50 items.
I'm using Flex 4.5, my ItemRenderer is already very optimized, using as little nesting as possible, fxg and so on.
Is anyone having similar issues? I've tried almost everything in the book bar going back to mx.
View 3 Replies
Sep 3, 2009
The jist of what I'd like to know and focus on understanding, is details on how binary deserialization occurs in Flex 3. When is the constructor called, when are properties set, are private members serialized or does all deserialization occur on and through setters, etc? I'm having a hard time finding information on this.In a Flex 3 AIR application, I have a pretty complex object graph(just a bunch of objects referencing one another, kinda like a big data model except a bit more complex) that I serialize to a file using a single call on the FileStream.writeObject and readObject on a root object, which serializes and deserializes the entire object graph.I found that I needed to always have a default constructor, else I would get exceptions on the objects when deserializing if they were part of an ArrayCollection. So I had to eleminate the constructor parameters or set default values. I now have many setters like this in my classes, such as the below where mConnection accumulates some information it needs through different setters, where as before I had this all packed into the constructor since all of the information is really necesary for the Connection to function:[code]So the connection's serverIP is still an empty string because the server was assigned to the client's property before the server was completely initialized.
I could probably resolve this by using binding so that updates to the serverip in the server are bound to the connection, but I find binding properties to be fairly complicated (it's really simple on UI in mxml cause you just use the curly bracket syntax but doing it by code is what I found complicated). I have also resolved some cases by removing the constructor parameters entirely, so that there is no default values. All that aside, I still really need a deeper understanding of the details of binary serialization as far as how it rebuilds the object graph. I even have circular references, and it seems to handle those fine and maintain multiple references without duplicating objects. It's just when my constructors/setters are more complex that I'm running into these problems because of the order of what occurs during deserialization. It is really inconsistent though, as adding breakpoints in various places seems to influence the order that things occur, making it more difficult to debug.On a side note for anyone that might sidetrack the topic because I am serializing a class called Connection. I added some code to address some things, like in the Connection class there is an instance of a Socket. Of course my socket would not be connected after I close and reopen the application and deserialize it, so before I serialize my object graph, I go through and close the socket and set the reference in the Connection class to null, so that there is no longer a reference to the socket and thus it will not get serialized. After deserialization on the next application run I create a new socket.
View 1 Replies
Jan 25, 2012
I am working on a server push from Java to Flex. But some how the MessageBrokerServlet is not getting initialized, seems like it is calling a method from: flex.messaging.config.LoginCommandSettings.setMatch() Eventually I found out that this method indeed does not exist in that class (LoginCommandSettings). I there something else that is going wrong?
[Code]....
View 1 Replies
Jun 23, 2010
Is it "better" to initialize AS3 class variables in the class constructor? Or can I just initialize them to their default value when I declare them at the top of my class? I ask because when there's a lot of class variables, it appears inefficient to declare them in one place and then initialize them in another when I could easily do both in the same place. It one option is better than the other,
[Code]...
View 2 Replies
Apr 14, 2010
I have a component called a TableDataViewer that contains the following pieces of data and their associated set functions:[code]This component is nested in another component as follows:[code]Looking at the trace in the logs, the call to set table is coming before the call to set dataSetLoader. Which is a real shame because set table() needs dataSetLoader to already be set in order to call its load() function.So my question is, is there a way to enforce an order on the calls to the set functions when declaring a component?
View 1 Replies
Sep 8, 2009
The flex DataGrid colums are arranged alphabetically by default. I need to order the DataGrid colums as per the order in its dataProvider. The dataprovider is the result of the HTTPService . And the number of columns is not known to us . The number of columns depends on the HTTPService result.
View 1 Replies
Apr 16, 2010
I'm getting an odd error from my composite canvas component: An ActionScript error has occurred:
[Code]...
It seems to be related to the fact that my composite component has a child and I'm trying to add one in the place I'm using the component. So how can I do this correctly? omponent code looks like this (EditableCanvas.mxml):
[Code]...
View 2 Replies
Aug 6, 2009
I've got a flex-based swf, which is loading an AS 2-based swf and then, negotiating further activity via a LocalConnection. From time to time, the AS 2-swf can request that the flex-based swf load a movie. I've arranged this via on(release){} functions. The AS 2-swf, I'm making in Swish Max. In Swish, when I set the on (release) on a text field, (to invoke .send() on my localconnection), it works splendidly. However, when I attempt to perform the same calls for an on(release) attached to a movieclip, it actually causes the Flash player, and even the browser plugin to crash. In fact, the browser (IE) crashes as well. I checked the debug trace that ie asked me to send to microsoft at the last IE crash, and i noticed a StackOverflow exception embedded deep in the trace, but I couldn't determine its source.
View 5 Replies
Apr 9, 2010
I've got an flex application where I have a left side TREE control and a viewstack on the right and when someone selects the tree it loads the named viewstack based on the hidden node value of the XML of the tree. But it's throwing a error 1065 variable not defined on a viewstack which worked on the last browser refresh/reload. It's not related to a particular viewstack from what I can tell it just seems to throw the error on certain render events. I've tried to use creationpolicy="all" on the viewstack but it seems to not be of.
[Code]...
View 1 Replies
Feb 7, 2012
I have a project that I need to develop some Java code for. The project is using Flash and BlazeDS. For the initial build of the project, an Ant script is run that eventually runs what I believe is the Flex compiler (the sdk attribute points to a FlashBuilder 4 sdk/4.1.0 directory).
View 1 Replies
Jun 19, 2010
Working with a SWf where it's worked all along, loading data from url...But, now, if you switch from Flash Player 10 to Flash Player 10.1, I get the standard security sandbox violation:[code]The crossdomain.xml is still in place and if I downgrade to FP 10 (or earlier), it works as expected.
View 5 Replies
Jul 27, 2011
The application is too big to describe here, but I can tell you I have up to 20 modules or more that the client can use at any time. And if I go on loading screen after screen, my application can ocuppy 500MB and more.The script that I use to load and unload modules is:
public function createModule(modulo:String):void {
if(moduleLoader != null){
moduleLoader.unloadModule();[code]..............
View 2 Replies
Apr 14, 2010
I have a component that has a sub-component they both use a shared variable from the model. The shared variable needs to be set by the parent component before it can be used by the child component. I did like this in the parent component:
<mx:Canvas
xmlns:mx="library://ns.adobe.com/flex/mx"
...
creationComplete="group1_completeHandler(event)" >
[Code]....
But for some reason when the code inside myCustomComponent tries to use myVariable for the first time I get a "null" object error. This means I guess that the child component gets rendered before the group1_activateHandler gets called and consequently myVariable gets set.
What should I do to ensure that the parent container initializes the variable before the child component gets created?
View 2 Replies
Jun 26, 2010
I have a datagrid and it lists several rows as
seqno | NAME | COMPANY
1 | BOB | D&T
2 | Jenny | M&Y
3 | Jane | D&T
It is possible to have buttons as [MOVE UP] and [MOVE DOWN] so that when I select a row in a datagrid and press one of those button that the order changes and the seqno updates accordingly.
Meaning if I select Jane and press the [MOVE UP] button, the new order would be;
seqno | NAME | COMPANY
1 | BOB | D&T
2 | Jane | D&T
3 | Jenny | M&Y
View 2 Replies
Feb 11, 2011
In Flex you can use Declarations tags fo non UI elements.Problem:The order of classes inside the Declaration is sorted ascending or something...Meaning that in this example, AClass will be instantiated before BClass:
<fx:Declarations>
<local:AClass />
<local:BClass />
View 1 Replies
Jul 14, 2009
Coming from a pure programming background where I have a render() and which image is drawn over which, is based on in the order of the drawn function of the image being called.
But after trying out Flex, I notice that Flex allows images to be created & drawn in the MXML file using the <image> tag and that I can also create and draw images in a AS class file link to that MXML file.
But it seems like any images created in the MXML file are drawn over the images created and drawn in my AS class file.
Is there a way to specify the draw order of the images?
View 3 Replies
Jun 23, 2009
I have been trying to understand the way ActionScript's events are implemented, but I'm stuck.I know that AS is single threaded, which means that only one event handler will be executing at a time, and also means that handlers will be executed in a deterministic order*.For example, consider the following code:
1: var x = {executed: false};
2: foo.addEventListener("execute", function(){ x.executed = true; });
3: foo.dispatchEvent(new Event("execute"));
[code].....
View 2 Replies
Jul 4, 2009
I'll show you the function first.[code]As you see, the order i put the items in the ArrayCollection is Areal, then Verdi (area, value)When i loop through the collection later, the order changes. Now it is Verdi then Areal (value, area).Does anyone have an idea of what might be the problem?It really ruins things when I pass it over to a PHP-script for table-making in html later.(I have several different dynamic DataGrids that differs in size and "values", so I can't really point directly to f.ex "Areal" in my PHP-script)And by the way, does anyone know how i can remove that pesky mx_internal_uid?
View 1 Replies
Jul 10, 2009
I have a checkbox that is bound to a property:
<mx:CheckBox label="Show All" selected="{showAll}"/>
I want to trigger an event when the checkbox is toggled that will read the value of showAll after a change:
<mx:CheckBox label="Show All" selected="{showAll}" click="_list.refresh()" />
Where, in this case, _list is an ArrayCollection object whose filter function depends on the showAll field to choose values.It turns out that this doesn't work, or at least gives a strong appearance of not working (what with the values in the list not changing and all). Is there a documented order of events for this, so that I can discover which events are dispatched in which order, and whether the binding value change will have fired the time the click event is dispatched? Alternately, can someone recommend a better way of doing this?
View 2 Replies
Sep 30, 2009
I have an AdvancedDataGrid that I allow the user to drag/drog the rows to reorder them and also allow them to sort on columns. I want to save the row ordering so that the next time I load up the data, the row ordering is preserved.
I have a bindable array collection to the data grid. The array is a collection of a custom AS object. I tried just using the bindabled array collection I give to the datagrid but the order always stays the same.
View 1 Replies