加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Unity使用UGUI实现登录注册(二)

(2017-09-25 22:09:08)
标签:

c

it

unity3d

vr

分类: Unity
继上一篇登录注册界面完成,此篇使用代码实现登录、注册功能

共三个脚本:DataStore(存储用户名和密码)、Login(实现登录功能)、Register(实现注册功能)
创建第一个脚本:DataStore,代码如下:

 C# Code 
1
2
3
4
5
6
7
8
9
10
11
12
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

//存储用户名和密码
public class DataStore MonoBehaviour
{
    
//用户名
    public const string name "name";
    
//密码
    public const string password "12345678";
}

创建第二个脚本:Login,代码如下:

 C# Code 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;

//用于登录判断和注册场景跳转
public class Login DataStore //继承"DataStore"里的用户名和密码
{
    
//注册信息
    public InputField inputName;//用户名输入框
    public InputField inputPaswd;//密码输入框

    
// 提示信息
    public Text ToolTip;
    
private string stringMassage "提示信息:";

    
void Update()
    {
        ToolTip.text stringMassage;
    }

    
//点击登录按钮
    public void login()
    {
        
string name inputName.text.Trim(); //保存输入的用户名,后面加以判断
        string oldname PlayerPrefs.GetString(DataStore.name); 

        
string passWord inputPaswd.text.Trim();//保存输入的密码,后面加以判断
        string oldPassWord PlayerPrefs.GetString(DataStore.password);


        
//用户名密码输入判断
        if (string.IsNullOrEmpty(name))
        {
            print(stringMassage 
"提示信息:请输入用户名");
            
return;
        }
        
if (string.IsNullOrEmpty(passWord))
        {
            print(stringMassage 
"提示信息:请输入密码");
            
return;
        }

        
if (oldname != name || oldPassWord != passWord)
        {
            print(stringMassage 
"提示信息:用户名或密码错误");
            
return;
        }

        
//用户名密码正确则跳转场景
        print(stringMassage "提示信息:登录成功");

        SceneManager.LoadScene(
"Play");
    }

    
//点击注册按钮
    public void Register()
    {
        
// print(stringmassage="提示信息:注册成功");
        SceneManager.LoadScene("Register"); //跳转到注册场景
    }
}

第三个脚本:Register,代码如下:

 C# Code 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;

//注册
public class Register DataStore //继承"DataStore"里的用户名和密码
{
    
//注册信息
    public InputField inputName;
    
public InputField inputPaswd;
    
public InputField inputPaswd2;


    
//提示信息
    public Text ToolTip;
    
private string stringmassage;

    
void Update()
    {
        ToolTip.text stringmassage;
    }

    
//点击注册按钮
    public void register()
    {
        
string name inputName.text.Trim();
        
string password inputPaswd.text.Trim();
        
string password2 inputPaswd2.text.Trim();

        
//正确注册则跳转场景
        if (string.IsNullOrEmpty(name)) //为空
        {
            print(stringmassage 
"提示信息:请输入用户名");
            
return;
        }
        
if (string.IsNullOrEmpty(password) || inputPaswd.text.Length != 8//为空或者长度不等于8
        {
            print(stringmassage 
"提示信息:请输入8位密码");
            
return;
        }
        
if (string.IsNullOrEmpty(password2)) //为空
        {

            print(stringmassage 
"提示信息:请输入确认密码");
            
return;
        }
        
if (password != password2) //两次密码不一致
        {
            print(stringmassage 
"提示信息:两次密码输入不正确");
            
return;
        }

        print(stringmassage 
"提示信息:注册成功");

        
//存储用户名和密码
        PlayerPrefs.SetString(DataStore.name, name);
        PlayerPrefs.SetString(DataStore.password, password);
    }

    
//点击返回登录按钮
   public void ReturnLogin()
    {
        SceneManager.LoadScene(
"Login");
    }
}

将Login脚本挂到"Login"场景的相机上:
然后将Register脚本挂到"Register"场景中的相机上:
同样调整"Register"和"ReturnLogin"按钮的响应方法,如图:
最后运行检测OK:


0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有