当前位置:服务支持 >  软件文章 >  Unity iOS登录界面集成教程

Unity iOS登录界面集成教程

阅读数 883
点赞 10
article_banner

如果你运行了上篇文章的代码,你会发现界面很粗糙,操作起来也很费事,所以,这一节介绍NGUI的使用

下载后关闭unity,然后放置到安装目录下的 如图的目录当中

unity 接入ios登陆 unity登录界面教学_ngui


放好后重新打开unity,然后右键点击assets->import package->NGUI2.3.4  导入


导入成功后会在unity的软件菜单中出现NGUI的选项。

unity 接入ios登陆 unity登录界面教学_unity入门_02

...开始使用:  1.建立一个新场景,删除主摄像机,点击上图的NGUI,create a new  UI出现下面的界面,创建一个Panel

unity 接入ios登陆 unity登录界面教学_unity 接入ios登陆_03


然后选中Panel的情况下,点击NGUI->Create new widget,如图,在出现的窗口中添加对应的资源,最后点击7,成功显示到视图中



类似于添加上图中的sprite(精灵),模仿上篇添加输入条和按钮,布局如下。 具体参数自己改改,属性一栏很全的

暂时没有导入中文字体,所以只能英文输入。到此NGUI的方便性就体现了出来,灵活方便了点。

布局完界面如下:

unity 接入ios登陆 unity登录界面教学_ngui_04

其余NGUI内容:

Atlas maker 制作一个图集,用于ImageButton的制作,例如鼠标移动其上时大图片,点击后变另一种图片。这些细节需要美工制作

使用中文字体:选中一个label后,右侧属性栏出现

unity 接入ios登陆 unity登录界面教学_unity 接入ios登陆_05

点击1处选项,选择unity,此时的字体已经切换为unity的动态字体,而不再是NGUI的静态字体,font选择arial。 然后在2处输入要修改的内容,就可以显示中文。


要实现登陆,那么就要有客户端和服务端。这里用到了网络知识,详细见这篇译文,翻译国外教程文章

http://www.unitymanual.com/thread-41436-1-1.html

当你创建了服务器后,登陆才有意义。给主摄像机添加脚本 NetWorkScript.cs


using UnityEngine;
using System.Collections;
using System.Net.Sockets;

public class NetWorkScript  {//取消对MonoBehaviour的继承
    private static NetWorkScript instance;//全局单例对象
    private static Socket socket;
    private static string ip = "127.0.0.1";
    private static int port = 8899;
    public static NetWorkScript getInstance()
    {
        if (instance == null)
            instance = new NetWorkScript();
        return instance;
    }
    public static void init()
    {
        try
        {
            socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
            socket.Connect(ip, port);
            Debug.Log("服务器连接成功!");
        }
        catch
        {
            Debug.Log("服务器连接失败!");
        }
    }

}

给登陆按钮添加脚本connServer.cs

附件:NGUI可以监听的一些方法

unity 接入ios登陆 unity登录界面教学_unity 接入ios登陆_06

2.当需要访问UI下的子目录,且目录有多层时使用/

unity 接入ios登陆 unity登录界面教学_unity入门_07

unity 接入ios登陆 unity登录界面教学_ngui_08

3.需设计拖动UI时,可以继承UIDragDropItem 类,增加collider。然后属性内点选Clone On Drag就可以在拖走后原地保留个克隆体。拖拽后在其他UI不显示时,可以重写


<pre name="code" class="csharp">protected override void OnDragDropStart(){//抓起
base.OnDragDropStart();
transform.parent = transform.root;






this.GetComponent<UISprite>().depth = 40;//设置深度
}


protected override void OnDragDropRelease(GameObject surface){//释放
base.OnDragDropRelease();
if(surface != null && surface.tag == Tags.yourTag){
surface.GetComponent<UI***>().Set**(id);
}
}


4.怪物的掉血text或者是misstext的显示,使用NGUI的HUDtext实现,在怪物的头上加一个empty ,然后代码里使用UITools.Add去生成HUDtext。HUDtext可使用UIFollowtarget来实现跟随。

免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

相关文章
QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空