游戏制作之路(32)创建自定义的界面样式管理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/caimouse/article/details/85233785

前面学习了使用GUIStyle来自定义按钮,就可以显示各种各样的按钮了,但是采用这种方式有时候不方便管理整个程序,或者不同游戏之间的按钮。比如你定义了一套公司的游戏风格的界面,想在不同的游戏之间进行使用,这时一个一个地拷贝代码,再去设置属性,是否感觉很傻,对了,还有一个更聪明的办法,就是把所有按钮、文本、滚动条都放到一起管理,这样就很方便在不同项目之间进行共享了,这时就需要使用到GUISkin类,它就是定义一套界面风格的管理器,也方便不同的风格之间进行切换。
下面就来创建GUISkin来管理界面风格,如下:

创建这个GUISkin对象,要从project窗口选择,然后弹了右键菜单,再在菜单里选择GUI Skin,就可以创建,把它命名为SampleSkin,然后设置下面的按钮属性:

最后在摄像机里添加脚本代码,如下:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class SampleGuiskin : MonoBehaviour {

    public GUISkin skin;
    private Rect btnRect;

    int count;

    // Use this for initialization
    void Start()
    {
        count = 0;
        btnRect = new Rect();
    }

    // Update is called once per frame
    void Update()
    {

    }

    //界面显示
    private void OnGUI()
    {
        btnRect.x = Screen.width / 3;
        btnRect.y = Screen.height * 2 / 5;
        btnRect.width = Screen.width / 3;
        btnRect.height = Screen.height / 5;

        if (GUI.Button(btnRect, "深圳改革开放", skin.button))
        {
            print(count);
            count++;
        }
    }
}

在这里主要定义public GUISkin skin,因此需要在界面选择skin的属性为SampleSkin,如下图:

设置完成之后,就可以点击试运行了,可以看到运行的结果如下:

到这里就学会了使用GUISkin来管理不同界面元素风格,也方便不同游戏之间进行共享风格,也可以让玩家进行个性化的界面选择。

https://blog.csdn.net/caimouse/article/details/51749579

猜你喜欢

转载自blog.csdn.net/caimouse/article/details/85233785
今日推荐