Unity实现用户条款弹窗及登录

首先来看效果图。。。
1.先编辑页面
1)新建登录按钮,更名为Login

2)新建toggle,新建方式如下图

调整toggle的大小和位置到适当的范围。
3)新建同意用户条款按钮,步骤为新建UI->image

注意:在按钮上添加button脚本点
,如果想更改button的文字,则需要修改text中的文本内容
4)制作用户条款弹窗
新建空物体,命名更改为Clause,在Clause下,新建image把图片透明度改为全透明,并在image上新增button脚本

然后设置图片点击控制用户条款窗口活动状态,具体做法参考下图
先点击Image,出现右侧属性,点击Onclick中的加号,把Clause拖到箭头所指位置,更改其中的方法为GameObject.SetActive(游戏物体活动状态)

设置弹窗背景:新建图片,并调整至适当位置

设置文字显示区域:新建Image,大小自己调整至合适位置。在其下新建文本显示Text。在属性中新增Mask脚本,新增Scroll Rect脚本,把Text拖到ScrollRect中Content中,用户条款一般显示方式为竖向滑动,所以把控制水平方向的Horizontal勾选去掉

测试文本区域范围尽量大于它的父物体,方便看显示效果

此时,用户条款弹窗制作完毕,要跟“同意用户协议条款”按钮进行关联。
找到刚才的条款按钮,在下面新建Onclick事件,把clause(用户条款弹窗)拖到按钮事件上。因为是要点击按钮之后跳出弹窗,所以要把活动状态后面的选项打钩。

5)制作点击按钮失败弹窗
与用户条款弹窗的制作流程基本相同,不再赘述。
2.开始写脚本,代码如下
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class LoginCtl : MonoBehaviour {
/// <summary>
/// 用户条款单选框
/// </summary>
public Toggle m_yonhutiaokuan_toggle;
/// <summary>
/// 同意用户条款弹窗
/// </summary>
public GameObject m_tanchaung;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
/// <summary>
/// 登录按钮
/// </summary>
public void action_Newlogin_btn()
{
if (m_yonhutiaokuan_toggle.isOn)
{
action_login_btn();
}
else
{
m_tanchaung.SetActive(true);
}
}
public void action_login_btn()
{
Debug.Log("进入下个界面 ");
}
}
把脚本挂给游戏物体,把相应的弹窗拖给脚本对象。注意Tanchuang是指登录失败的时候显示的弹窗。

挂载好脚本之后,运行程序。完成
Unity实现用户条款弹窗及登录的更多相关文章
- 解决服务器SID引起虚拟机不能加入AD域用户,无法远程登录的问题
最近在公司搭建AD域控制器,发现无法在计算机真正添加域用户,也就是添加的用户虽然可以在本地登录,但是无法远程登录,尝试多种方法都无法解决,而最终原因居然是虚拟机导致的服务器的SID冲突.本文记录下该问 ...
- 用户 'IIS APPPOOL\DefaultAppPool' 登录失败。
今天新建了一个ASP.NET(Language=C#)网站,配置好数据库后编写了几行代码测试数据库的是否能正常使用. 当运行程序时,第一个页面都没有打开就出现了错误(因为我首页就访问数据库,填充一些D ...
- 用户点击确认登录,自动跳转下面地址得到code
PHP获取微信openid 简单教程 WEB 2014年10月29日 10868浏览 6评论 获取code https://open.weixin.qq.com/connect/oauth2/ ...
- 面试题之redis实现限制1小时内每用户Id最多只能登录5次
面试题之redis实现限制1小时内每用户Id最多只能登录5次 /// <summary> /// redis实现限制1小时内每用户Id最多只能登录5次 /// </summary&g ...
- Linux启动或禁止SSH用户及IP的登录
启动或禁止SSH用户登录 一般情况下,在使用Linux操作系统都不会去机房来操作机器,都是使用一些第三方的工具来操作. 比如使用SSH Secure File Transfer Client工具来传输 ...
- 用户 'IIS APPPOOL\ExportExcel' 登录失败。
解决了前两个错误,在成功打开项目后,在访问数据库又越到如下错误 “/”应用程序中的服务器错误. 用户 'IIS APPPOOL\ExportExcel' 登录失败. 说明: 执行当前 Web 请求期间 ...
- IIS发布问题-用户 'IIS APPPOOL\DefaultAppPool' 登录失败
今天新建了一个ASP.NET(Language=C#)网站,配置好数据库后编写了几行代码测试数据库的是否能正常使用. 当运行程序时,第一个页面都没有打开就出现了错误(因为我首页就访问数据库,填充一些D ...
- 无法打开登录所请求的数据库 "ASPState"。登录失败。 用户 'NT AUTHORITY/SYSTEM' 登录失败。
原文:无法打开登录所请求的数据库 "ASPState".登录失败. 用户 'NT AUTHORITY/SYSTEM' 登录失败. 无法打开登录 'ASPState' 中请求的数据库 ...
- 用户 'IIS APPPOOL\IdealTest' 登录失败解决方案
原文:用户 'IIS APPPOOL\IdealTest' 登录失败解决方案 运行MVC框架后可能会提示“用户 'IIS APPPOOL\IdealTest' 登录失败” 详细堆栈信息如下 说明: 执 ...
随机推荐
- C 语言多线程与锁机制
C 语言多线程与锁机制 多线程 #include <pthread.h> void *TrainModelThread(void *id) { ... pthread_exit(NULL) ...
- 从头推导与实现 BP 网络
从头推导与实现 BP 网络 回归模型 目标 学习 \(y = 2x\) 模型 单隐层.单节点的 BP 神经网络 策略 Mean Square Error 均方误差 \[ MSE = \frac{1}{ ...
- EECS 649 Introduction to Artificial Intelligence
EECS 649 Introduction to Artificial IntelligenceExamElectronic Blackboard Submission Due: April 24, ...
- go-switch特点
程序中遇到有枚举分支逻辑时,需要用到 switch 代替多个 if else 判断. 学习过程遇到一些与C#不同点,记录下. 语法: switch expr { case x1 : //expr为x1 ...
- 加sogou 和wps
刚装完系统,装常用工具: sogoupinyin / wps linux ==========sogoupinyin=========================1.sogou linux 下载d ...
- Linux (麒麟)系统 重启后无法登陆进图形界面
登录图形化界面的时候,会显示GNOME电源管理器没启动等提示信息,会一直卡在登录界面 在启动的时候按ESC或者在登录界面crtl+alt +f3 进入字符终端界面 查看物理存储空间占用信息,可能会有一 ...
- [IoC容器Unity]第二回:Lifetime Managers生命周期
1.引言 Unity的生命周期是注册的类型对象的生命周期,而Unity默认情况下会自动帮我们维护好这些对象的生命周期,我们也可以显示配置对象的生命周期,Unity将按照配置自动管理,非常方便,下面就介 ...
- 防cc攻击策略
黑客攻击你的网站,会采取各种各样的手段,其中为了降低你网站的访问速度,甚至让你的服务器瘫痪,它会不断的刷新你的网站,或者模拟很多用户同一时间大量的访问你的网站, 这就是所谓的CC攻击,这就需要我们在程 ...
- OpenGL.Tutorial文章转载
ZC:本来以为没有中文版的,原来有中文版,网址为: ZC: OpenGL3.0教程 _ 泰然网.html(http://www.tairan.com/archives/6126/) ZC: OpenG ...
- 上下文调用(call , apply , bind)
var arr = []; var obj = { '0':'零', '1':'一', 'a':'sdsd', length : 2 } console.log( arr.push.call(obj, ...