Forum Academy Marketplace Showcase Pricing Features

Button clickability

First of all I’m very new so my apologies if this has a very obvious solution :slight_smile:
I’m trying to develop a Tree skill. I need to make a button unclickable until the previous one is clicked. What I think I need is to simply untick “This element isn’t clickable” when Button A is pressed. What I tried to achieve this is the following:

Created Button A and Button B

When Button A is clicked -> Create a New thing -> “Button B” (Field “Unlock” and Type yes/no, then = Yes)
Then I toggled Button B as unclickable.

Then I tried 2 things:

  1. Went to “Button B” -> conditional -> "Search for Button B’s Unlock is yes… and I get stuck. I don’t think I need anything else, but the issues icon tells me "Page X - states must evaluate “yes or no” but this is a list of yes/nos

  2. Went back to Button A’s workflow and added a new action “Set state of Button B Unlock = yes”
    Then tried step 1, same thing happened.

This is a only a test, what I actually will need, is that Button A takes the user to a new page with an activity, when this activity is finished it must return some data into a “thing” that eventually makes the next button clickable.

Hey @ssmusic3 :slight_smile: Can you share a link to your app?

Hi @fayewatson, this is it https://bubble.io/page?name=index&id=buttontest&tab=tabs-1

So it seems like you will want to use custom states

I created a new page in your editor and set up a basic custom state. If this is what you are trying to achieve, I can break it down for you.

1 Like

@ssmusic3 I would use the chain of custom states as you suggest, but from a design principle do not use the controlA to set the custom state of a controlB. Instead, set a custom state of Control A and allow Control B to read its value using conditionals.

This allows you to scale easier if you end up wanting more things to look at status of controlA

This is an approach we use when design control systems logic, simplifies maintainability. (and depending on the safety criticality of the system, writing out is not permitted, only reading in allowed)

When page is loaded set group state button clickable [yes/no] value = no > button 1 clicked set group state > button clickable value=yes

Like what?

@skylershelton thanks a lot! That was exactly what I needed. Guess I was complicating things needlessly.

@DaveA thanks for your suggestions and input. I’ll keep that in mind as this progresses

1 Like