Uinty的uGUI学习(05):案例-完善登录功能

一、uGUI - 综合练习完善(案例登录界面)
1.设置Input Field 透明度为0
2.监听Input Field 的事件(写一个脚本[script])
3.绑定按钮的点击事件
4.获取用户名、密码框的值(定义属性)
5.使用input Field的属性 需要引入一个类 
using UnityEngine.UI;
6.给控件和代码建立连接

  • 1.Set Active 设置活动
showmessage.gameObject.SetActive(true); // 显示
showmessage.gameObject.SetActive (false); // 隐藏
  • 2.IEnumerator
迭代器

问题

1.
查看input field的类型
去官方文档去查看
file:///Applications/Unity/Unity.app/Contents/Documentation/en/ScriptReference/index.html
引入类 using UnityEngine.UI;

脚本

1.业务逻辑处理-进行账号密码判断

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;  // 导入UI类

public class GameController : MonoBehaviour {

// 属性
    public InputField if_user;
    public InputField if_pwd;

    public Text showmessage;

// 按钮点击
    public void OnLoginButtonClock()
    {
        string username = this.if_user.text; // username.text 错误写法 ,因为 username 是一个局部变量 我们要使用外部变量需要加上this.,访问属性
        string passwrod = this.if_pwd.text;

        if (username == "admin" && passwrod == "admin") {
            // 登录成功之后,跳转到游戏界面
            print("登录成功之后,跳转到游戏界面");

        } else {
            showmessage.gameObject.SetActive(true);
            showmessage.text = "你的用户名或者密码错误,请重新输入";
            StartCoroutine (DisappearMessage ());

        }
    }

// 用来消失message文本的
    //  IEnumerator 迭代器
    // 所以yield关键词是干啥的?它声明序列中的下一个值或者是一个无意义的值。
    IEnumerator DisappearMessage()
    {
        yield return new WaitForSeconds (1);
        showmessage.gameObject.SetActive (false);
    }
}

9_1脚本和unity控件进行绑定.png

你可能感兴趣的:(Uinty的uGUI学习(05):案例-完善登录功能)