unity学习(38)——创建(create)角色脚本(panel)--EventSystem

1.在scripts文件夹下创建一个脚本CreatePlayerPanel.cs,脚本挂到panel上!给panel加个tag,叫createPanel,脚本内容如下:

cs 复制代码
using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;

public class CreatePlayerPanel : MonoBehaviour
{
    //TMP_Text a = GameObject.FindWithTag("username").GetComponent<TMP_Text>();--不能写这里
    public GameObject panel;
    // Start is called before the first frame update
    void Start()
    {
        Debug.Log("CreatePlayerPanel获取object测试");
        this.panel = GameObject.FindWithTag("createPanel");//同一命名空间即可,canvas在最外边是有道理的
        this.panel.SetActive(false);
    }

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

成功运行效果如下:

2.紧接着做一下,点击"创建角色"按钮,弹出panel。

脚本代码如下:(这个后期大概率还要改)(在下一章中改成静态类static实现了)

cs 复制代码
public void GoToCreate()//unity那边想要加载必须public
{
    Debug.Log("我确实进入onclick函数了");
    GameObject panel = GameObject.FindWithTag("createPanel");//同一命名空间即可,canvas在最外边是有道理的
    panel.SetActive(true);
}

挂载如下(右边):

3.问题!切换场景后,所有的button和inputfiled都失灵了 ,在做美工的时候我就发现这个问题了。我试了一下,如果开始不隐藏select角色的场景,该场景中的功能都是正常的。的确是个棘手的问题。

Unity的按钮不响应点击_unity按钮点击没反应-CSDN博客

你把Button从一个场景复制到另一个场景。而另一场景里没有EventSystem,所以无法处理点击事件

直接把log场景中的粘过去就可以了,然后就一切正常了!

相关推荐
阳光永恒73620 小时前
Python零基础入门全套资料包免费分享 | 从0到1系统学习路线(含课件+源码+实战案例)
开发语言·python·学习·编程入门·python教程·编程学习·免费资料
weixin_4588726120 小时前
东华复试OJ二刷复盘15
学习
却道天凉_好个秋20 小时前
音视频学习(九十六):PLC
学习·音视频·plc
知识分享小能手20 小时前
Redis入门学习教程,从入门到精通,Redis集群架构:语法知识点、使用方法与综合案例(6)
redis·学习·架构
xian_wwq21 小时前
【学习笔记】数据投毒的9种攻击方法与防御措施
笔记·学习·数据投毒
醇氧21 小时前
第一、二、三范式学习
数据库·学习·oracle
苦瓜小生1 天前
【黑马点评学习笔记 | 实战篇 】| 10-用户签到+UV统计
笔记·后端·学习
_饭团1 天前
C 语言内存函数全解析:从 memcpy 到 memcmp 的使用与模拟实现
c语言·开发语言·c++·学习·算法·面试·改行学it
别催小唐敲代码1 天前
FastAPI 从零开始完整学习教程
学习·fastapi
24白菜头1 天前
第十五届蓝桥杯C&C++大学B组
数据结构·c++·笔记·学习·算法·leetcode·蓝桥杯