Salvar seleção do Toggle
3 participantes
Página 1 de 1
Salvar seleção do Toggle
Bem eu to tentando salvar se o Toggle esta ativo ou não.
Mas literalmente tudo oque eu fiz não funciona.
Então gostaria de perguntar se alguém sabe onde eu estou errando?
Mas literalmente tudo oque eu fiz não funciona.
Então gostaria de perguntar se alguém sabe onde eu estou errando?
- Código:
using UnityEngine.UI;
using UnityEngine;
[RequireComponent(typeof(Toggle))]
public class SaveSelectedToggle : MonoBehaviour
{
[SerializeField] private string SaveName;
Toggle toggle;
private void Awake()
{
toggle = GetComponent<Toggle>();
}
void Start()
{
toggle.isOn = (PlayerPrefs.GetInt(SaveName, 1) == 0);
}
public void SelectedToggle()
{
int enable = toggle.isOn ? 1 : 0;
PlayerPrefs.SetInt(SaveName, enable);
}
}
Re: Salvar seleção do Toggle
Um amigo meu me mostrou como que faz isso.
Sinto muito pelo incomodo.
Sinto muito pelo incomodo.
- Código:
using UnityEngine.UI;
using UnityEngine;
[RequireComponent(typeof(Toggle))]
public class SaveSelectedToggle : MonoBehaviour
{
[Header("Name the Toggle Save File")]
[SerializeField] private string SaveName;
Toggle toggle;
private void Awake()
{
toggle = GetComponent<Toggle>();
}
void Start()
{
if (PlayerPrefs.GetInt(SaveName) == 1)
{
toggle.isOn = true;
}
else
{
toggle.isOn = false;
}
}
void Update()
{
if (toggle.isOn == true)
{
PlayerPrefs.SetInt(SaveName, 1);
}
else
{
PlayerPrefs.SetInt(SaveName, 0);
}
}
}
Re: Salvar seleção do Toggle
Olá, Vê se isso pode te ajudar:
Colocar Diretamente no Update não é recomendado, pois vai estar constantemente salvando, Pode tirar o Método Salvar e colocar em outra parte do seu Script.
- Código:
using UnityEngine.UI;
using UnityEngine;
[RequireComponent(typeof(Toggle))]
public sealed class SaveSelectedToggle : MonoBehaviour
{
[SerializeField] private string SaveName;
private Toggle toggle;
private void Awake()
{
toggle = GetComponent<Toggle>();
}
private void Start()
{
LoadToggle();
}
private void update()
{
CheckToggle();
}
public void CheckToggle()
{
toggle.isOn = (PlayerPrefs.GetInt(SaveName) == 1) ? true : false;
SaveToggle();
}
public void SaveToggle()
{
int enable = toggle.isOn ? 1 : 0;
PlayerPrefs.SetInt(SaveName, enable);
}
public void LoadToggle()
{
if (PlayerPrefs.HasKey(SaveName)) // SE EXISTE ESSA CHAVE...
toggle.isOn = PlayerPrefs.GetInt(SaveName);
else
{
int enable = toggle.isOn ? 1 : 0;
PlayerPrefs.SetInt(SaveName, enable);
}
}
}
Colocar Diretamente no Update não é recomendado, pois vai estar constantemente salvando, Pode tirar o Método Salvar e colocar em outra parte do seu Script.
Magnatah- Instrutor
- PONTOS : 3547
REPUTAÇÃO : 209
Idade : 24
Áreas de atuação : Dєรєиvσlvєdσя Wєb(Fяσит-єиd), Blєиdєя, υиiтy, C#, ρнρ є Jαvαรcяiρт.
Respeito as regras :
Re: Salvar seleção do Toggle
AKA.: eventos
https://docs.unity3d.com/2019.1/Documentation/ScriptReference/UI.Toggle-onValueChanged.html
invés de usar update..
https://docs.unity3d.com/2019.1/Documentation/ScriptReference/UI.Toggle-onValueChanged.html
invés de usar update..
NKKF- ProgramadorMaster
- PONTOS : 4817
REPUTAÇÃO : 574
Idade : 20
Áreas de atuação : Desenvolvedor na Unity, NodeJS, React, ReactJS, React Native, MongoDB e Firebase.
Respeito as regras :
Tópicos semelhantes
» Seleção de botão
» Seleção de Personagens
» como fazer uma ação ao ligar ou desligar o toggle
» [SELEÇÃO DE PERSONAGENS]
» Como Posso Fazer isto ? Marco Uma Toggle no Canvas e um Mesh Seja ativado ?
» Seleção de Personagens
» como fazer uma ação ao ligar ou desligar o toggle
» [SELEÇÃO DE PERSONAGENS]
» Como Posso Fazer isto ? Marco Uma Toggle no Canvas e um Mesh Seja ativado ?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos