我怎么能记住我的统一复选框?

时间:2016-12-12 20:32:59

标签: unity3d login

我创建了一个具有登录表单的应用程序,该表单从服务器上的SQL数据库获取数据,我想添加一个记住我的复选框,以便用户可以自动登录,我该怎么做呢或如何保存数据到文本文件然后检索回来? 感谢

2 个答案:

答案 0 :(得分:1)

除了写入文件外,

unity还提供了PlayerPrefs中的本地存储,它适用于所有平台。 请在这里阅读更多相关信息

https://docs.unity3d.com/ScriptReference/PlayerPrefs.html

您可以在那里存储登录信息并在之后检查以查看玩家是否具有登录凭据。

答案 1 :(得分:0)

此脚本将在项目文件夹中创建txt文件,并使用登录字符串将其写入单行。为了使用它,您必须将此脚本放在任何您喜欢的位置,然后在编辑器中拖动INPUT FIELD并切换。最后在登录按钮上分配OnClick事件以执行loginClick()方法。

using UnityEngine;
using UnityEngine.UI;
using System.IO;

public class InputFieldTest : MonoBehaviour {

//reference for InputField, needs to be assigned in editor
public InputField login;
string loginText;
//reference for Toggle, needs to be assigned in editor
public Toggle rememberToggle;
bool remeberIsOn;

// Use this for initialization
void Start ()
{
    loginText = "";
    FindLogin();
}
public void FindLogin()
{
    if (File.Exists("userSetting.txt"))
    {
        using (TextReader reader = File.OpenText("userSetting.txt"))
        {
            string str;
            if ((str = reader.ReadLine()) != null) login.text = str;
        }
        //Debug.Log(loginText);
    }
}
public void remember()
{
    using (TextWriter writer = File.CreateText("userSetting.txt"))
    {
        writer.WriteLine(login.text);
    }
}
public void loginClick()
{
    remeberIsOn = rememberToggle.isOn;
    loginText = login.text;
    if (remeberIsOn)
    {
        remember();
    }
    else
    {
        using (TextWriter writer = File.CreateText("userSetting.txt"))
        {
            writer.WriteLine("");
        }
    }
}

}

相关问题