desativar botão após clicar nele
2 participantes
Página 1 de 1
desativar botão após clicar nele
Boa tarde, estou cirando um quiz e queria fazer com que após eu clicasse no botão de uma das respostas, todas as alternativas ficassem desabilitadas até eu ir para a próxima pergunta, já tentei aqui e não consegui, alguém poderia me ajudar? o script de responder e próxima pergunta estão aí embaixo.
obrigado
public void responder(string alternativa)
{
if (exibindoCorreta == true) { return; }
if (correta[listaPerguntas[idResponder]] == alternativa)
{
qtdAcertos += +1;
}
switch (correta[listaPerguntas[idResponder]])
{
case "A":
idBtnCorreto = 0;
break;
case "B":
idBtnCorreto = 1;
break;
case "C":
idBtnCorreto = 2;
break;
case "D":
idBtnCorreto = 3;
break;
}
if (mostrarCorreta == true)
{
foreach (Button b in botoes)
{
b.image.color = corErro;
}
exibindoCorreta = true;
botoes[idBtnCorreto].image.color = corAcerto;
StartCoroutine("mostrarAlternativaCorreta");
}
else
{
for (int i = 0; i < perguntas.Length; i++)
{
listaPerguntas.Add(i);
}
}
perguntaTxt.text = perguntas[listaPerguntas[idResponder]];
if (utilizarAlternativas == true)
{
altAtxt.text = alternativaA[listaPerguntas[idResponder]];
altBtxt.text = alternativaB[listaPerguntas[idResponder]];
altCtxt.text = alternativaC[listaPerguntas[idResponder]];
altDtxt.text = alternativaD[listaPerguntas[idResponder]];
}
}
public void proximaPergunta()
{
idResponder += 1;
qtdRespondida += 1;
progressaoBarra();
if (idResponder < qtdPerguntas)
{
if (perguntaIMG == true)
{
perguntaIMG.sprite = perguntasIMG[listaPerguntas[idResponder]];
}
else
{
perguntaTxt.text = perguntas[listaPerguntas[idResponder]];
}
if (utilizarAlternativas == true)
{
altAtxt.text = alternativaA[listaPerguntas[idResponder]];
altBtxt.text = alternativaB[listaPerguntas[idResponder]];
altCtxt.text = alternativaC[listaPerguntas[idResponder]];
altDtxt.text = alternativaD[listaPerguntas[idResponder]];
}
}
else
{
calcularNotaFinal();
timer.stopTime = true;
progressaoBarra();
}
}
obrigado
public void responder(string alternativa)
{
if (exibindoCorreta == true) { return; }
if (correta[listaPerguntas[idResponder]] == alternativa)
{
qtdAcertos += +1;
}
switch (correta[listaPerguntas[idResponder]])
{
case "A":
idBtnCorreto = 0;
break;
case "B":
idBtnCorreto = 1;
break;
case "C":
idBtnCorreto = 2;
break;
case "D":
idBtnCorreto = 3;
break;
}
if (mostrarCorreta == true)
{
foreach (Button b in botoes)
{
b.image.color = corErro;
}
exibindoCorreta = true;
botoes[idBtnCorreto].image.color = corAcerto;
StartCoroutine("mostrarAlternativaCorreta");
}
else
{
for (int i = 0; i < perguntas.Length; i++)
{
listaPerguntas.Add(i);
}
}
perguntaTxt.text = perguntas[listaPerguntas[idResponder]];
if (utilizarAlternativas == true)
{
altAtxt.text = alternativaA[listaPerguntas[idResponder]];
altBtxt.text = alternativaB[listaPerguntas[idResponder]];
altCtxt.text = alternativaC[listaPerguntas[idResponder]];
altDtxt.text = alternativaD[listaPerguntas[idResponder]];
}
}
public void proximaPergunta()
{
idResponder += 1;
qtdRespondida += 1;
progressaoBarra();
if (idResponder < qtdPerguntas)
{
if (perguntaIMG == true)
{
perguntaIMG.sprite = perguntasIMG[listaPerguntas[idResponder]];
}
else
{
perguntaTxt.text = perguntas[listaPerguntas[idResponder]];
}
if (utilizarAlternativas == true)
{
altAtxt.text = alternativaA[listaPerguntas[idResponder]];
altBtxt.text = alternativaB[listaPerguntas[idResponder]];
altCtxt.text = alternativaC[listaPerguntas[idResponder]];
altDtxt.text = alternativaD[listaPerguntas[idResponder]];
}
}
else
{
calcularNotaFinal();
timer.stopTime = true;
progressaoBarra();
}
}
eduardonog30- Avançado
- PONTOS : 2883
REPUTAÇÃO : 5
Respeito as regras :
Re: desativar botão após clicar nele
Bom... Uma forma de "desativar" é deixando o botão como nao interagivel exemplo:
- Código:
using UnityEngine.UI;
public Button botao;
//quando precisar desativar um botão
botao.interactable = false;
//quando precisar ativar um botao
botao.interactable = true;
Re: desativar botão após clicar nele
SauloeArthur escreveu:Bom... Uma forma de "desativar" é deixando o botão como nao interagivel exemplo:
- Código:
using UnityEngine.UI;
public Button botao;
//quando precisar desativar um botão
botao.interactable = false;
//quando precisar ativar um botao
botao.interactable = true;
mas o que eu quero é que ele comece ativado, e aí, após escolher a alternativa ele desabilite e ao ir para a próxima pergunte ele volte a ficar habilitado
eduardonog30- Avançado
- PONTOS : 2883
REPUTAÇÃO : 5
Respeito as regras :
Tópicos semelhantes
» Dar dano no inimigo ao clicar nele
» mudar objeto ao clicar nele
» CENA SER CARREGADA APÓS CLICAR EM UMA IMAGEM
» -[COMO FAZER UM CUBO PARA ATIVAR UM CANVAS QUANDO O PLAYER ENCOSTA NELE?]-
» Objeto Pai descobrir que Filho entrou nele
» mudar objeto ao clicar nele
» CENA SER CARREGADA APÓS CLICAR EM UMA IMAGEM
» -[COMO FAZER UM CUBO PARA ATIVAR UM CANVAS QUANDO O PLAYER ENCOSTA NELE?]-
» Objeto Pai descobrir que Filho entrou nele
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos