This content has been marked as final. Show 13 replies
You're changing the text inside the clip... then you're changing the
original, not the instance of it. How else would Flash do it??? This is how
any OO system works, you're just not quite getting it. You can do what you
want by making the text inside the clip dynamic and then changing with AS.
For instance, say you have a clip containing a field with an instance name
of myText. Drag two instance of the clip on stage. Give one an instance name
of t1, the other name t2. Then you can do: t1.myText.text = "Hello"; and
t2.myText.text = "World".
Adobe Community Expert
Couldn't you just duplicate the symbol, name it something new and then alter it? Or does that increase loading time?
Easy. Right click on your instance and choose "Duplicate Symbol" from the menu. This disconnects the instance from the original and you can now edit it without it affecting the original.
The behavior of Symbols in Flash is integral to the way the program works. This behavior makes total sense if you look into why Symbols exist in the first place.
That's exactly the way I think it should work. But when I duplicate a symbol, name it something different, and then make a change to it...it's changing the one I duplicated from as well. I don't get why it would do that...
you have to double click on the new symbol's name in the library to open up it's editing enviornment. I've forgotten this step before.
Have you done this and it doesn't change the original for you? I'm doing exactly that and it keeps changing the one I copied from.
Well...I think I figured out the only way I can do this. You have to convert the text into a symbol when you go in to the next level to edit the text.
To paraphrase what DMennenoh said above, I think you are really missing a key concept of how Flash works here. I'm glad that you have found a solution, but you should try to come to grips with symbols and what they mean.
The point of symbols is to decrease file size since if symbols are identical you only need to download their content once and then the player just makes another copy of them at the other end.
Let's say you have to get 100 copies of a 50 page annual report to some meeting halfway around the world.
One approach would be to get a really big box to send all 100 copies using some courier service. This has the drawback of being a hassle and expensive.
Instead you could e-mail the document with instructions for your colleague to make 100 copies on the other end. Faster and more economical. In this case the document is a symbol and your colleague is the Flash player who takes the one symbol and makes 100 exact copies at the other end.
But what if you want to have each board member's name printed on the cover? In this case you could take the symbol, duplicate it and then put the name on the cover, and do that over and over again. At the end you would have 100 different symbols. Suddenly you realize there is a typo on page 2 – and you will have to go in and change 100 different symbols (er, reports!) because you have made each one an individual. In this case you could still e-mail it, but it will be a much larger file.
Another approach would be to leave a spot on the cover for the names, send your colleague a list of the names and have them print out some tags or stickers and put them on each cover. In this case you get the benefit of only having to send one report and only the modest extra bit of work to make the list.
This would be like using the actionscript DMennenoh suggested above to change a dynamic text field. There are also a lot of other approaches that can be used.
Anyways, just a thought…
it could be you are duplicating the original symbol but editing another symbol inside this new
symbol that is the same in the original one. get it?
Symbol 1 contains symbol 2.
You duplicate symbol and call it symbol 3. But then you go and edit symbol 2 inside of symbol 3 and
that will also effect the instance of symbol 2 inside symbol 1.
--> **Adobe Certified Expert**
> That's exactly the way I think it should work. But when I duplicate a symbol,
> name it something different, and then make a change to it...it's changing the
> one I duplicated from as well. I don't get why it would do that...
I'm still not getting it...unless the only thing you're suggesting is to make the text dynamic text instead of static text and so this would change it? I understand the advantage of being able to have one symbol and having multiple instances of it...but if I want the symbol's text changed I wasn't getting how to do that. I'll experiment with the dynamic text and see if I can figure out what you're talking about.
yeah, well that's what's going on. The text is a symbol inside of the movie. I don't know why it gets set up as it's own symbol, but hopefully I'll figure out an easier way to do this or understand what the other experts are trying to tell me. I wish the experts would speak novice or even beginner for that matter...their input doesn't do much if I can't understand what they're trying to say. I'm sure the experts already know how to do beginner and novice stuff, so why would they feel speaking "expert" would do me any good?
i dont speak for anyone but myself - so cant comment on why others are speaking "expert". You are
editing the text inside a symbol - but 2 different symbols contain this same text - so...all you
have to do is duplicate the text symbol also. then edit it.
--> **Adobe Certified Expert**
> yeah, well that's what's going on. The text is a symbol inside of the movie.
> I don't know why it gets set up as it's own symbol, but hopefully I'll figure
> out an easier way to do this or understand what the other experts are trying to
> tell me. I wish the experts would speak novice or even beginner for that
> matter...their input doesn't do much if I can't understand what they're trying
> to say. I'm sure the experts already know how to do beginner and novice stuff,
> so why would they feel speaking "expert" would do me any good?
Here's a little tutorial for you to experiment with.
- create a new flash document
- draw a rectangle on stage
- add a new layer and make a text field within the rectangle
- in the field type in 'Hello World'
- set the field's type to Dynamic
- right under the field type is the Instance Name field - give the field an
instance name of myText
- select both the rectangle and the field and then hit F8 - make the new
symbol a movie clip
- the clip will now appear in the library
- select the one on stage, and give it an instance name of m1
- drag a second instance of the clip from the library on stage and give it
an instance name of m2
- you know have two instances of the same clip on stage - both showing the
same text, Hello World
- create a new layer - select the frame and in the Frame Actions panel enter
m1.myText.text = "Hello m1";
m2.myText.text = "Hello m2";
Ctrl-Enter to test.
Adobe Community Expert