ActionScript 3.0 :: Proper Use Of Weak Reference?
Jun 8, 2010
As I understand it if I set the weak reference param to true in my event listeners I don't need to worry about removing the listeners. I'm not really clear what would cause the listener to be set for garbage collection. I would hate to have a situation where the listener was removed before I wanted it to.
View 2 Replies
Similar Posts:
May 6, 2010
package uk.co.bigroom.utils
{
import flash.utils.Dictionary;
/**
* Class to create a weak reference to an object. A weak reference
[code]....
In this Class, how they denote one as Weak Reference and one as Strong reference.
View 1 Replies
Aug 29, 2011
My problem is basically as follows. There is an instance of a class extending EventDispatcher. Everything goes well when I add event listener to the object like this:
[Code]...
Now someFunction is not called even though the line containing dispatchEvent('eventName') is being executed just like before (and there is an external reference to myObject as well). The application I'm developing is quite complex so, unfortunately, I can't post the exact code.
View 2 Replies
Dec 12, 2009
The default value for weakReference in the call to addEventListener() is false. Many memory issues can be resolved by using weakReferences; in fact, some industry experts "strongly recommend always using weak references with listeners".If this is the case, can someone provide me with a good reason why weakReference defaults to true? (Note that I'm not asking why someone would ever want a listener that is not a weakReference, but rather why weakReference=false is the default)
View 2 Replies
Jan 12, 2010
I was having a weird problem on my Mac when creating a loader.
PHP Code:
var myUrlRequestURLRequest URLRequest(imageurl);myImageLoader Loader();myImageLoader.contentLoaderInfo.addEventListener(Event.INIT, imageInitHandler, false,
[code].....
View 0 Replies
Dec 11, 2009
The default value for weakReference in the call to addEventListener() is false. Many memory issues can be resolved by using weakReferences; in fact, some industry experts "strongly recommend always using weak references with listeners".If this is the case, can someone provide me with a good reason why weakReference defaults to true? (Note that I'm not asking why someone would ever want a listener that is not a weakReference, but rather why weakReference=false is the default)
View 4 Replies
Feb 4, 2010
I just started using Swiz, and, it seems like Swiz forces you to create classes with weak encapsulation. Swiz requires all event handlers to be public in order to mediate events.
Assume that component 'A' dispatches a few events, which I want to listen to in component 'B'. Traditionally, I'll just add event listeners on 'A' in 'B' and all the event handlers in 'B' can be kept private. However, if, I am using Swiz, I need to make all the handlers, mediating events, public.
View 4 Replies
Apr 19, 2010
As I currently understand, if an event listener is added to an object with useWeakReference set to true, then it is eligible for garbage collection and will be removed if and when the garbage collection does a sweep.
public function myCustomSpriteClass() //constructor {
this.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownListener, false, 0, true);
this.addEventListener(MouseEvent.MOUSE_UP, mouseUpListener, false, 0, true);
}
In this case, is it not appropriate to initialize an object with weak references event listeners, incase the garbage collector does activate a sweep removing the objects event listeners since they were added during initialization of the object? In this case, would it only be appropriate to create a type of deallocate() method which removes the event listeners before the object is nullified?
View 1 Replies
Aug 29, 2011
I understand how weak references work, but I am bit confused regarding it's use in actionscript event listeners. Consider the example below:
public class Rectangle extends MovieClip {
public function Rectangle() {
var screen:Shape=new Shape();
[code]...
If the Rectangle object has no other references, then it is a candidate for garbage collection, but since there is an event listener within the object, the event dispatcher holds a reference to the object, even though there are no other references to the object(other than the one held by the event listener). Hence it is prevented from being garbage collected. Is this the reason why weak event listeners are prescribed? Is the flash player so naive that, it cannot figure out that the event listener is defined within the same object?
View 1 Replies
Dec 18, 2009
So there I was, creating a small app that allowed user to upload custom images. Everything went smooth, until......<insert horror music here> So you want to validate that its an image, and not something else. Well you restrict it with the File filter...but there are ways around that. So as a double check, you check the file type after a file is selected. <drum roll>
Awesome, the type method returns null if the image doesnt have the proper headers....what the hell....So most images are compressed for smaller file size, thus the headers are stripped out. So...Type method appears to be useless....There was a simple way around this using the name method..but what the hell...type method is weak!!
View 4 Replies
Mar 5, 2010
i heard that weak references can be used for memory optimization, but i really don't understand what it is. does anyone around here know a good tutorial, blog or something that covers this issue?
View 2 Replies
Aug 5, 2009
I've been teaching myself actionscript 3 over the past month or so and recently ran into an issue where an object kept doing things after I thought it had been removed. I figured out that the problem was caused by an event listener using the default of useWeakReference = false and I'm wondering why that's the default. what is the advantage to not using a weak reference? and why is that the default? it seems to me that in general you'd want to use weak references, so I must be missing something.
View 4 Replies
Jun 9, 2010
I'm having difficulties doing an animation here, all I'd like to do is create 30sec animation for a big screen (without sound). It needs to have an aspect ratio of 16:9 and be exported in the file format of either mov or wmv. Any recommends for settings to do this the best way?
So far I've made my flash document as large as possible at that ratio (36" x 20" ), created the timeline to 30 seconds and started importing my graphics and such. My biggest problem I've had is when I export to mov, the animations are slow and the video time is longer than what I've set. (whereas exported as avi, the animation is normal) Any ideas on how to counter this problem?
View 1 Replies
Aug 3, 2010
s there a possible issue in the way the button is made not coded?I am using Flash CS4. My buttons seem not to work. I do not think issue is in the action script (I am scripting in 3.0).Here is the way I make the button. I add a movie clip on the stage on the over state ( so if you were to double click on that movie clip a new time line would open), at the end of that movie clip there is a simple stop(); code on its own line. I do not add extra frame on the over state.Then I assign the code to the button and of course cross reference its name in the properties and everything is matching up. Just in case here is my code:
floralyte_btn.addEventListener(MouseEvent.CLICK, onClickFloraLytePopUp);
function onClickFloraLytePopUp(event:MouseEvent) :void {
gotoAndStop("61");
}
All of my buttons work fine through the Up, Over, Down, HIt stages without the problem. The functionality works fussy, some of them I have to click twice to go to the specified frame with the UILoader, some do not work at all and some work.I double checked and all of them seem to be done identical.
View 5 Replies
May 29, 2009
to get a proper content of the following xml-node:
[Code]...
what is the correct way in as3 to get the content so that the " " linebreak stays intact?
View 5 Replies
Jun 4, 2009
I am making a flash game. The game starts off running fast and smooth, however 15 minutes into the game it's noticibly slower. I worry that I am causing memory leaks by not removing objects from my game properly. I understand the whole garbage collection idea, but I still need confirmation.
[Code]...
View 6 Replies
Jan 29, 2010
I finally tried validating my website at W3C, and naturally I got 300 or so errors
As I'm knocking them out, I noticed a lot of these are from the flash embeds. Currently I'm using the traditional method[code]...
Turns out even though it still works, the <embed> tags are no longer necessary and consequently will not validate.
Tried searching around but all I could find were some pretty vague tutorials and looking at sources is nothing short of Greek at this point.
Can I get an example or two of how to properly "embed" an swf?
View 1 Replies
Dec 5, 2008
I have a scroll file, taken from a tutorial, which is linked to a class. After having customized my file I did try it and it works fine. The problem is starting when I try to import this file to an empty MCL in my website. When I have imported all the elements they do not respond and act like single pieces (es. the scroll bar is detached from the scroller). What can I do? I am attaching all the codes and I think it is the reason I cannot import a proper classed swf. The function is Event.ADDED_TO_STAGE. the only major thing is that I do not know how to change my loader class to contain this missing bit.
View 9 Replies
Nov 11, 2009
So using AS3 with Adobe Flash CS4, what is the correct way to pass a variable from a server side script "PHP" to my SWF?
View 3 Replies
Apr 7, 2012
I'm wondering if there is a proper way to upgrade from Flash CS4 to CS5. What I did was just open existing CS4 project in CS5 and saved it as CS5. It seems to work but I'm wondering: did I miss something in the transition? Do I need to make additional modifications for project to work better in CS5?
View 1 Replies
Jul 23, 2010
I'm having a bit of a problem with - what I assume to be - a masking issue. Apparently I can't post images. This may hinder my ability to explain the problem. Oh well, I'll try to make do with just words.
I have four "ground" sprites, each one shorter than the last, that are layered on top of each other. References to them are stored in an array groundLayers[], for easy reference. When a new [not ground] sprite is created - it's given a number which tells it which layers it is between. Herein lies the problem: how do I conceal the new sprites properly?
Without doing anything, they wind up all in front, not layered. My initial solution was to just change their indexes with setChildIndex(), but this proved to be disastrous when I tried to add mouseEvents to the objects. I tried to set the objects' masks to these objects, but that didn't seem to work. I also created separate layers which just contained the "sky" parts of each ground layer and setting the object masks to shoe sky layers, but that didn't work, either.
View 2 Replies
Dec 19, 2004
I have created a class to define my main navigation buttons. I would like to handle which button is clicked/pressed as simply and elegantly as possible, and I figured the best way would be to add a static variable to the class that keeps track of the current button pressed. Here's some quick pseudo-code. Code: class MainButton ext MC static var currentButton:MainButton public var sectionToLoad:String public static function getCurrentButton() public function getSection() button.onPress = currentButton = this // other button actions. // then i can check for what the currently clicked button // is and now access its variables. MainButton.getCurrentButton().getSection() etc. etc. etc. I am curious if this is a "proper" way to go about tracking the buttons. I find it is pretty elegant, but i'd rather make sure that this is a good practice of using static class variables. Also, it looks to me that all custom class definitions become a _global object?
View 1 Replies
May 10, 2007
I want to dynamically attach a class to a movieClip without using the linkage method. I choose not to because i need to pass constructor vars into it and It can have multiple classes.I want it properly attached so I can reference all the classes functions and variables through the MC. How can I do this?
View 9 Replies
Feb 27, 2008
I fixed the problem I was having with my TextArea - just as I thought, it was the CR characters throwing off the selection position. Stripping them out fixes everything. Now I have a different problem, though.My program needs to save text files as well as open them, and on a Windows machine, linebreaks are indicated with CR+LF: Wordpad is smart enough to recognize lone LFs as linebreaks, but Notepad isn't (and even then, saving the file in Wordpad will reinstate all the missing CRs). Is there any way I can detect what linebreak system is used by the OS so I can save files properly?
View 5 Replies
Sep 18, 2004
I've been reading the tutorials about doing a preloader, but I haven't found exactly what I'm looking for. Here it is: I would like to make a preloader in a specific .fla file, then load an external swf into it. How do I tell flash to get the bytesTotal not only for the preloader, but as well for the external file? Is there a special way to load the swf with a preloader?
View 2 Replies
Nov 29, 2004
I have a problem regarding the x, and y coordinates on a flash project of mine. Whenever I set the x and y coordinates for a movieClip:
Code:
function setPos() {
with (mc1) {
_x = 400;
_y = 300;
}}
The MovieClip never gets sent to the proper coordinates.
View 5 Replies
Jun 25, 2010
So I'm only 2 months into actionscript, and have been going along as I go. I've been able to figure out everything up until this point, but this is just confusing me. Right now we have games set up and a home screen to get to all the games. I have a background swf that controls the border of the site and that loads the home page in the center as soon as it starts. The way I have it set up, you get a set of movie clips that when you click on them, they unload the current swf and load the game swf.
This is where I hit the problem. In each game I have a menu where you can choose level1, level2, or level3. Clicking on the game in the main menu works fine and the main menu unloads and the game loads. When you're in the game menu and choose a level I get this error:
Error #2044: Unhandled IOErrorEvent:. text=Error #2035: URL Not Found
[Code]...
View 4 Replies
Oct 4, 2010
I'm trying to record an audio/video program and the resulting .flv is in the wrong directory. It always ends up in application/live. I copied the sample application to application/eTutor and have the following code:
private var rtmpPath:String = "rtmp://x.x.x.x/eTutor"; private var rtmpSession:String = "0_738_0_9_6_6_2012_8_00_00_AM";
...
nc2.addEventListener(NetStatusEvent.NET_STATUS,onFMSNetStatus); nc2.client =
[Code]......
View 3 Replies
Jun 22, 2010
I am writing an ActionScript class and I don't know where the standard place to put it is.In other words, where should I put the package in regards to the hierarchy? In flash.myname.mypackage? What is the standard naming convention? As you can probably tell, I haven't had a lot of experience writing ActionScript classes :)
View 2 Replies
Aug 11, 2011
I'm trying to replace instances created by dragging and dropping into a MovieClip through Flash's IDE with actual classes so I can add them to a game loop and have them as actual entities. In other words, I'm trying to create a streamlined way to allow developers to visually add their entities to a platforming engine I'm working on.
This is my third attempt at it and I'm completely stuck.The code below loops through a movieclip that contains an exported symbol with a class linked to it named MyEntity. However, it loses its extension to BaseClass and thus doesn't move when compiled.
It inherits: MovieClip > BaseClass > MyEntity. However when compiled with the IDE it ignores BaseClass and just does MovieClip > MyEntity.
My code is designed to find and store the position of MyEntity, remove it from the container movieclip, add a brand new instance of it (with the base being proper) then set that new instance to the same position of the original.
for ( var i:int = 0; i < LayerInIDE.numChildren; i++ )
{
// first we want to get all the display objects in the layer
// these are objects that were placed from within the Flash IDE (ie. dragged and dropped into the MovieClip
var original:DisplayObject = LayerInIDE.getChildAt( i );
[code]....
This does not work.
It outputs Game.entities::MyEntity [class MyEntity] false. MyEntity is a proper class and DOES extend from BaseClass. However, the issue is the IDE weirdly removes the reference to the base class - as if MyEntity never had a base class. I cannot seem to recreate it as getting the reference to the class also returns that MyEntity never had a BaseClass. However, if I type in var newEnt = MyEntity(); instead of getting the class name through getDefinitionByName it works normally and extends from BaseClass.I need it to extend from BaseClass as that is the main class all entities in my game engine require to use.
View 2 Replies