ActionScript 3.0 :: Removing Stage Items From Memory
Apr 14, 2010
I am adding few items dynamically from the library to the stage by creating instances. If I remove them using removeChildAt() then the item gets removed from the display but exists in the memory. How can I remove this from memory?
View 2 Replies
Similar Posts:
Feb 18, 2009
The following for loop removes children from their parent if they're in the display list. It works correctly, but I also want to remove each child from memory with the same loop.
View 1 Replies
Sep 29, 2009
its possible to remove something from the stage without removing it from the memory. Ie not using removieChild(); Reason being: I want to replace an image inside a movieclip rather than add another image on top or remove the image and movieclip entirely.
View 2 Replies
Feb 6, 2009
im having some dificulties in the combobox of Flex 3, after defining the dataProvider and filling the combobox, how can i remove the items in the combobox later (without removing items in the dataprovider)? if i set the provider to "" or null, the items in the combobox are still there
View 1 Replies
Mar 27, 2008
I'll try to explain the general operation of my program, and that might shed some light on my issue. I have a menu with 50 different small postcards. When one is chosen, the program zooms it up in order to fill the screen, populates some data which is unique to each postcard, and "flips" it so you can see the writing on the back. The postcard is a movieclip which imports a front image, 3 back images, and some XML text. There are some buttons on the "back" of the postcard to choose to look at a few images and text.When you choose to close the postcard, it flies away. I use the same movieclip for all 50 postcards, and just change the images and text that I load.
Once the postcard flies away, I want to remove it from memory. It won't happen with removeChild() as that keeps it there in case I want to reference it again I guess, and I have tried setting the postcard variable name to "null" without much success.I add listeners to the buttons on the postcard when I instantiate its class, so I am not sure if I have to remove them in order to get the garbage collector to deal with it. But, I also don't know what I don't know about removing things from memory. In one section of the Flash docs (Working with display object containers) it says:
"The removeChild() and removeChildAt() methods do not delete a display object instance entirely. They simply remove it from the child list of the container. The instance can still be referenced by another variable.(Use the delete operator to completely remove an object.)"And, at another place in the docs (the script reference about removeChild()) it says:
"Removes the specified child DisplayObject instance from the child list of the DisplayObjectContainer instance. The parent property of the removed child is set to null , and the object is garbage collected if no other references to the child exist. The index positions of any display objects above the child in the DisplayObjectContainer are decreased by 1.
View 6 Replies
Sep 29, 2011
I'm having a problem where I load my SWF (Advertisement) into the dom after an event happens in a flash game. After viewing the ad, the SWF is removed with JavaScript and users continues to play, this continues several times without ever reloading the page.
The problem I am running into is in IE 8 & 9 performance of the game drops and frame rate becomes choppy after several ads are shown. Each advertisment has a timer built in and my thought is that the ad is not being fully removed from memory hence causing a slowdown.
Is there a way to ensure a full removal of the ad or at least a way to detect within the ad that it is no longer on the page & kill the timer?
View 1 Replies
Jan 11, 2011
I have a function called changeMovie which is supposed to load a new movie/swf into a already established container.I can get the new movie to load (all these movies have sound embedded in them) but I can not figure out how to get the old movieclip out of memory.I can foresee an instance of memory overload in my application down the line.I am using Flash CS3 with AS3.[code]As it stands now, I can get the new movie to play and be shown but the old movie clip still continues to play "in the background - along with its sound".
View 9 Replies
Aug 5, 2011
I have this line
Code:
this.parent.removeChild(this);
So basicaly the object is removing it self from the parent object,but I still think that it exisits in memory and doing its backend job.How can I remove it completely from memory?
View 8 Replies
Sep 17, 2010
I'm making a rather large flash project and so I'm concerned about memory usage. At the end of each section of the application I remove the overarching parent element that holds the content. Although this remove the parent, does this also free up the memory for each of the children contained within this, or should I run an iteration to remove those prior to removing the parent?
I'll give a little more explanation in-case I'm not expressing what I want:
addChild(movie1);
movie1.addChild(movie2);
movie1.addChild(movie3);
By using this code:
removeChild(movie1);
Does it remove movie2 and movie3 from memory or are they still stored, just unlinked?
View 3 Replies
Dec 2, 2009
I'm performing the following operation many times (sniped of code below). I'm creating a two dimension array whose overall size depends on each iteration the process takes.
myArray = new Array(); // initialize the array
myArray[0] = new Array(); // add new array to first index
myArray[1] = new Array(); // add new array to second index
Question is: When I need to recreate this sequence again, do I just perform the same operation (repeat the same 3-lines)? Or is there a way of freeing up resource first.
View 3 Replies
Aug 14, 2009
I've made a script which loads in, at intervals, images in a sequence (image1.jpg, image2.jpg ). However I've being doing my nut as to how to remove the preceeding image from memory as looking a the Windows Task Manager, each image gets added again and again, accumulating memory usage. I've tried removeChild, and null; stuff, but to no avail.I want it to go through the 10 images, and with each step to the next image, remove the last one from memory.[code]
View 2 Replies
Oct 15, 2009
I'm trying to make a Starfield program as practice for ActionScript 3. I'm using a timer event in the document class to create Star objects which are defined by an object class connected to the movieclip Star in the Library. The object class has a timer as well, and at each tick it repositions itself a few points away and scales up, creating the image of a star shooting towards the sides of the stage. When the star has gone past the boundaries of the stage or when it has scaled to a certain size, it removes itself from the display list with the command: this.parent. removeChild(this);This removes the star from the display list just fine, however after that I can't get the star to set itself to null so that it will be removed from memory, and I'd like some suggestions on how to do this properly. An idea I had was to make a function in the document class that the child objects can call, something like this.parent.KillMe(this) which would give itself as a reference to the function, which could then use a local variable reference to set the child to null, removing it from memory. This all seems terribly complex, so I'm sure there's another way.
I haven't noticed a memory leak or slowdown, however, so I'm curious if objects without references that are removed from the display list are automatically removed? That could be both good and bad, as the object might want to add itself to the display list again at a later time; not in this Starfield program, but perhaps in another I write.
View 11 Replies
Apr 22, 2009
I am having memory problems when adding & removing children. Here is a brief overview of what I'm doing:I'm ading children to a VBox component:the structure of the children is:
Code:
<mx:Canvas>
<mx:Image/>
<mx:Text/>
[code]....
All remove the children, BUT I am getting memory leaking, especially using the second method! If I don't add the TextField child to the UIComponent I don't seem to experience any memory problems!
View 2 Replies
Jan 21, 2011
I am having a bit trouble removing a movieclip properly from memory.In the onComplete event I use this to add the swf content to my clip
[code]....
The removeChild is double here just for savty But the trace command from the clip I loaded continues to put somthing in my output window. So it still keeps running and it isn't even stoping.
View 4 Replies
Jul 8, 2009
The app is basically an animated character that sits on screen and moves around doing stupid little animations. Each animation (Talking, Dancing, Jumping, etc) is an individual Movie Clip made up of around 50 or so PNGs in sequence. I'm using CS3 to create the clips, and exported them as SWCs for use in Flex. When I addChild() the MovieClip to stage, memory usage increases, which makes sense. However when I use removeChild() on the same clip, and then add another clip, memory increases, and this goes on with every new clip... essentially leaving 10 clips in memory even if they aren't being played.
Now, first thing you are going to think is I've got a reference to the clip somewhere and it's not garbage collecting. Well, I'm using weak listeners everywhere, and I'm pretty sure I've killed every reference by NULLing out the objects. I understand Garbage Collection doesn't happen right away... but it never seems to happen. As a test, I wrote a really bare-bones app to attach and remove a clip to see if the memory ever frees. I've left the app running for a half hour after removing the clip from stage, and memory usage stays the same:
[Code]...
View 2 Replies
May 31, 2010
Is this at all possible? I just finished re-building my entire portfolio site in AS3 because I can't change the frame rate for loaded content in AS2. Now I find out after completely rebuilding this thing that AS2 content gets stuck in Flash Player 9's memory and won't erase on Loader.unload. All my work from years back is in AS2.
View 0 Replies
Oct 27, 2008
Below is a function set that's used to get info from an XML source(s) and populate a List Component (videoList). Works great. The second function loads data from a separate XML source and populates the SAME List Component. When the second function is called it loads the data in addition to the existing data into the List Component. I want it to REPLACE the data. How would I accomplish this?
public function getXMLdata(event:Event):void {
var campXML:XML = new XML(xmlLoader.data);
var vid:XML;
for each(vid in campXML.vid) {
[Code].....
View 3 Replies
Aug 10, 2011
I'm trying to remove items from an array but its not working like its supposed to.Here is my code:
for(var i:uint = 0;i<OrderModel.getInstance().orders.length; i++){
if (OrderModel.getInstance().orders[i].time == hour){
OrderModel.getInstance().orders.splice(i, 1);[code]....
it deletes all the items but 1. I allways have one item left wich should be deleted but it isnt.
View 2 Replies
Jan 22, 2010
I have a Listbox whith a ArrayCollection as datasource. I'm trying to remove the selected items from the ArrayCollection to update the list.Here is how I coded the remove function:
for each (var item:Item in theList.selectedItems)
{
theArrayCollection.removeItemAt(theArrayCollection .getItemIndex(item));
}
This works fine as long as the ArrayCollection is not sorted. When I apply a sort I get a RangeError from ListCollectionView.removeItemAt.
View 0 Replies
Dec 9, 2009
I could pop, shift, splice or slice it out of there (hey, that had a nice ring to it...)
how to properly remove items from an array while in the middle of a for loop:
Code:
//This will cause errors, because if the condition is met, it will skip the next array in line
for (var i:int = 0; i < arr.length; i++)
[Code].....
If someone is reading through my code, will they understand what I am doing without me having to clarify with comments each time?
View 4 Replies
Jun 3, 2009
I have a large swf that is embedded in Director as a sprite I now want to put it onto a web page, so file size is critical Is there a way to remove unused library items when publishing so that file size is reduced? Is there another way to compress the swf so it is much smaller?The current size is about 25 Mb.What about streaming the swf?I'm not talking about streaming video or audio, just any Flash content.In Director, there is a way to right-click on a cast member and choose "find in score".If something isn't found it means that it either is not used in the movie or is implemented through code
View 3 Replies
May 24, 2011
I want to iterate over an ArrayCollection in Flex while there can be items added and removed.
Since i didn't find a way to use a "classic" Iterator like in Java, which would do the job. I tried the Cursor. But it doesn't really work the way i want it to be ;) So how do I do it nicely ?
var cursor:IViewCursor = workingStack.createCursor();
while (!cursor.afterLast)
{
[Code]....
View 5 Replies
Jul 21, 2011
Highlighted portion in red! How do i remove it? Code to render list is below:
<s:List id="ui_lstIndexList" width="175" height="600" fontFamily="TwinCen"
fontSize="24"
alternatingItemColors="[]" borderVisible="false" downColor="#7fceff"
[code].....
View 3 Replies
Mar 26, 2009
How do I remove an items from a data bound array? My code follows.
for(var i = 0; i < listBox.selectedIndices.length; i++) {
var toRemove = listFiles.selectedIndices[i];
dataArray.splice(toRemove, 1);
Here is my swf. The Add Photos works except when you remove items. [URL]
Add 3 photos different.
Remove 2nd photo.
Add a different photo.
SWF adds the 2nd photo to the end.
Here is my code
private function OnSelectFileRefList(e:Event):void {
Alert.show('addstart:' + arrayQueue.length);
for each (var f:FileReference in fileRefList.fileList) {
var lid:ListItemData = new ListItemData();
lid.fileRef = f;
arrayQueue[arrayQueue.length]=lid;
[Code] .....
View 5 Replies
Dec 5, 2011
I have an ArrayCollection that is the dataProvider for a spark.components.List, which has allowMultipleSelection="true". There is a "Remove Selected Items" button which initiates the removal of all the selected items from the ArrayCollection upon being clicked.
I currently use the following method:
myList.selectedIndices.sort(ascendingSort);
// remove items, counting backwards
for (var i:uint = myList.selectedIndices.length; i > 0; i--) {
myArrayCollection.removeItemAt(myList.selectedIndices[i-1]);
}
where ascendingSort does what you expect ;). It works fine, and I know that it will always work.
However, I did take note that if I neglected the sort altogether, to my surprise the removal still worked. The reason for this turned out to be that, when the removeItemAt is called, the selectedIndices are correspondingly updated.
So my question is: Can one rely upon a removeItemAt call updating the values in the selectedIndices? or might that turn out to be different between runtimes and/or Flex SDK versions?
View 2 Replies
Jun 3, 2009
I have a large swf that is embedded in Director as a sprite. I now want to put it onto a web page, so file size is critical. Is there a way to remove unused library items when publishing so that file size is reduced? Is there another way to compress the swf so it is much smaller? The current size is about 25 Mb. What about streaming the swf? I'm not talking about streaming video or audio, just any Flash content. Any tricks for speeding the process up so that the user doesn't have a long wait before the swf starts?In Director, there is a way to right-click on a cast member and choose "find in score". If something isn't found it means that it either is not used in the movie or is implemented through codeIs there a similar way in Flash of detecting unused items or automatically eliminating them when publishing?
View 1 Replies
May 14, 2011
- I have A.fla.
- A.fla includes buttons, movie clips and also B.swf is loaded in A.fla using a LOADER
- i want to access elements in A.fla, from the actionscript codes inside B.fla to modify those movie clips and buttons based on actions going on in B.swf
for instance, lets say there is a button X in A.fla, and there is a button Y in B.fla, B.swf is loaded into A.fla, and I want the button Y to erase button X when clicked.
general question: accessing elements in a stage, through a SWF file loaded into that stage.
View 2 Replies
May 18, 2011
I have an arrayCollection with the following structure:
[Code]...
the AC is defined as follows:[Bindable] private var projectErrorsAC:ArrayCollection = new ArrayCollection;
I'm using this AC in a repeater to display each error. After each error is shown, I've placed an "Accept" and "Deny" button. Once the user clicks either one of these buttons, I'd like to call a function that removes the particular error from the AC. Here's what I have so far:
[Code]...
View 2 Replies
Oct 8, 2010
I have a list of 10+ items. when i click back up the list 1 step i call the code below to remove a thumbnail image associated with that list item.
if(indice < count-i){mx.core.Application.application.removethumb.dispat chEvent(new MouseEvent(MouseEvent.CLICK));
}
HOWEVER: I would like that if - for example i am on item 10 and click to item 4 - all the thumbnails between 4-10 are removed. it it possible to dispatch this click event X number of times dependant on the - count value?? FOR REFERENCE: THIS IS THE CODE THAT REMOVES ALL ITEMS BEYOND THE ONE I HAVE SELECTED:
[Code]....
View 0 Replies
Feb 15, 2011
There is a Flex app with 7 main views. And there is a memory issue when navigating between views.All these views were in a ViewStack, but due to some involving 3D objects I assumed it was too much to have it all in the display list. I'm now clearing all children from the stack and adding/removing them when needed. This gave a small performance increase, but still becomes unresponsive with use. The strange thing is, with this and the original method, the CPU climbs with use but eventually levels out somewhere. Now I'm creating new instances of each screen when they are navigated to and setting the previous variable to null. Now it looks like CPU is spiking when the view is created, but leveling out to something much much lower than it was. This felt like progress, but now the available memory keeps climbing where it wasn't before....
My understanding was calling remove child or remove all children would mark the object for deletion when the garbage collector next ran. I can't see any other references to the instance. My code is along the lines of [code]I have a function for each button to add a new instance like the above.The only thing I can see and feel silly asking but need confirmation, is each view extends a class called "Screen", this class contains a singleton reference to some core components.[code]Would this trick the garbage collector into thinking it was still needed? General advice on clearing Objects from the memory pool would awesome!!! I've never needed to analyze the Flash Player in such depth.I think it's an error with sound drivers, removing all sound and shes purring like a kitten. Works on my machine fine with windows XP, but not on the touch pad the application is crashing on with windows 7 (unsure of the drivers looking into them now) Now I'm thinking its not the drivers, tried 3 different versions, all with no improvement. I did discover the sound was fading in and out with the TweenLite lib. Doesn't look like there are any memory leaks in TweenLite as it works fine on other machines. Just the use of volumeEasingFunction seems to consume increasing amounts of CPU until it freaks out. It is crappy hardware running windows 7, which doesn't help.
View 1 Replies