• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
2

Buttons not working correctly in Animate CC 2019

Community Beginner ,
Nov 16, 2018 Nov 16, 2018

Copy link to clipboard

Copied

I've encountered issues with the functionality of buttons in Adobe Animate CC 2019 (Build 326) and am curious if anyone else is having the same problem or knows how to resolve the issue. What I've found is that if I create and add AS3 script for a button, it works fine if it is on the first frame. If you move the button and accompanying frame script off of the first frame, to say frame 2 or 10 or 20, it fails. Sometimes it throws an "access of undefined property buttonInstanceName" error (even though the button is correctly named and present on the same frame as the script) and sometimes it makes the rollOver states wacky and ceases to function. Strangely, when I open old projects in 2019, they function fine. But, if I copy the layers from an old project to a new document created in 2019, it fails. I can't figure out what is going wrong and any advice/assistance would be appreciated.  I made this video documenting the issue if you'd like to see what I am talking about: buttonProblems - YouTube

Views

12.9K

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 1 Correct answer

Community Expert , Nov 17, 2018 Nov 17, 2018

disable 'use advanced layers' in the document settings (modify>document).

Votes

Translate

Translate
Community Expert ,
Nov 17, 2018 Nov 17, 2018

Copy link to clipboard

Copied

disable 'use advanced layers' in the document settings (modify>document).

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Nov 17, 2018 Nov 17, 2018

Copy link to clipboard

Copied

Thank you!  I didn't realize advanced layers turned all layers into symbols. While turning it off works, I'd still like to know how to get the functionality I want while maintaining advanced layers, but it does seem like advanced layers confounds or complicates some simple scripting for basic interactivity.

It seems that if you don't instantiate a button on frame 1, its button states (over, down) don't function correctly. Move any button off of the first frame, to frame 10 let's say, and you will not be able to see the "over" state on rollOver (although it seems to flash for a brief instant), regardless of any ActionScript you may have. Beyond this, let's say I wanted to get this simple AS3 code to work on a button or movieclip:

play_btn.addEventListener(MouseEvent.CLICK, onClick);

function onClick(e) {

    trace("play");

}

Using advanced layers, I can access the layer symbol with:

var myLayer = MovieClip(getChildByName("Layer_1"));

Then, I can access the button within it, using:

var myButton = myLayer.getChildByName("play_btn");  // or simply myLayer.play_btn

But, while this doesn't throw any errors, it does not work:

myButton.addEventListener(MouseEvent.CLICK, onClick);

function onClick(e) {

    trace("play");

}

Any advice on how to get this code (and/or any button or movieclip that does not reside on frame 1) to work?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Nov 17, 2018 Nov 17, 2018

Copy link to clipboard

Copied

put the code in frame 1 along with your button and use the button's visible property to toggle when it's seen and clickable.

or put a stop() in the frame where you have your button code that uses the layer as the button's parent.

or extend the button's layer, at least, one frame beyond the frame that contains a stop().  ie, the last frame of the button's layer causes a problem, if that's when you click your button.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Nov 17, 2018 Nov 17, 2018

Copy link to clipboard

Copied

Thanks. Yes, I had thought of the work-around of simply hiding and showing the button and that works. I did have a stop() action in the frame with the button/code, but that doesn't matter. However, extending the button's layer by one frame does then make the code and button work (I don't quite understand why, however). Same goes for working with movieclips. Thanks for your help.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Nov 17, 2018 Nov 17, 2018

Copy link to clipboard

Copied

you're welcome.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Dec 06, 2022 Dec 06, 2022

Copy link to clipboard

Copied

You are an absolute godsend i was struggling for so long trying to fix it- changing the use advanced layers kept breaking everything entirely, but this fixed it right away, thank you so much!

 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Dec 06, 2022 Dec 06, 2022

Copy link to clipboard

Copied

LATEST

@Brooklyn27459423le1u 

 

you're welcome.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Jun 06, 2019 Jun 06, 2019

Copy link to clipboard

Copied

if i turn off advanced layers alpha doesn't work anymore? so is there another solution?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Jun 06, 2019 Jun 06, 2019

Copy link to clipboard

Copied

stijnr1701  wrote

if i turn off advanced layers alpha doesn't work anymore?

No.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Jun 06, 2019 Jun 06, 2019

Copy link to clipboard

Copied

Well yes it does. I turned it off and the object in a layer with a classic tween to make them slowly invisible with the alpha function did not become transparant at all. It was not actually a question it was a determination

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Jun 06, 2019 Jun 06, 2019

Copy link to clipboard

Copied

Works fine for me. Maybe try removing and re-adding the tween.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Sep 29, 2019 Sep 29, 2019

Copy link to clipboard

Copied

I'm seeing the same thing; buttons all work correctly when I test in the browser, but then the buttons DON'T work (no rollover state, clicks don't work, etc) when I open the HTML file in a browser (any browser). I tried turning off "Advanced Layers", but still no dice. Thoughts?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Sep 30, 2019 Sep 30, 2019

Copy link to clipboard

Copied

check the browser console for errors. and create a new thread because it's not even clear what you're doing that's similar to the op and what's different.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines