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' 登录失败” 详细堆栈信息如下 说明: 执 ...
随机推荐
- [Python数据挖掘]第7章、航空公司客户价值分析
一.背景和挖掘目标 二.分析方法与过程 客户价值识别最常用的是RFM模型(最近消费时间间隔Recency,消费频率Frequency,消费金额Monetary) 1.EDA(探索性数据分析) #对数据 ...
- 小程序云开发--云函数上传文件或图片 base64
云函数开发遇到的问题 在微信云开发环境当中,普通的用户并没有往云存储内写入文件的权限 所以普通用户想要使用wx.cloud.uploadFile显然是不现实的 但是我们同时也知道,云函数是后台服务端, ...
- wireshark基础学习—第一部分wireshark的基础知识
1.Wireshark主窗口 Wireshark的主窗口如下所示 2.每个面板的内容 Packet List(数据包列表): 最上面的面板用表格显示了当前不惑文件中的所有数据包,其中包括了数据包序号. ...
- Springboot中Jackson的操作
有一段时间没写博客了,虽然是菜鸟一枚但毕竟总要有东西记录学习的,我相信有志者事竟成.今天在工作中使用Jackson转换了一个javabean,传到测试服上之后发现日期少了一天,使用的是@JsonFor ...
- python程序—名片管理系统
创建一个名片管理系统,实现增.删.改.查.四项功能 listcard = [] while True: print('**********欢迎来到名片管理系统**********') print(' ...
- scipy 短时傅里叶变化
原文链接 https://www.cnblogs.com/hoojjack/p/9967298.html 计算短时傅里叶变换(STFT) scipy.signal.stft(x,fs = 1.0, ...
- 201806 数据处理 SQL、python、shell 哪家强...速度PK(上篇)
最近在工作中,进行大量的数据处理,使用的是mysql5.7.22,发现当数据量级达到几十万之后,SQL执行速度明显变慢.尤其是当多个表join时,于是就尝试用python pandas进行数据处理,发 ...
- toFixed()精度丢失;复选框全选、取消
一.精度丢失和重写toFixed()函数 1.重写toFixed() Number.prototype.toFixed = function(length){ var carry = 0; //存放进 ...
- Cocos Creator学习六:加载/释放图片资源
1.目的:学习加载图片资源.使用图片资源创建对象以及释放图片资源. 2.注意事项以及主要函数: ①注意事项:使用loadRes函数,资源必须放置在assets下的resources文件夹下(默认没有r ...
- Redis(四)-持久化
1.Redis将所有数据存储在内存中,从内存同步到磁盘上,就做持久化过程. 2.持久化有两种方式:rdb(Redis Database)和aof(Append of file) # rdb持久化方法: ...