unity Tab键实现切换输入框功能

脚本挂上运行即可

复制代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;
/// <summary>
/// ************************************本脚本挂在输入框上即可*********************************************
/// </summary>
public class Tabcoll : MonoBehaviour, ISelectHandler, IDeselectHandler
{
    public void OnDeselect(BaseEventData eventData)
    {
        _instacnet = false;
    }

    public void OnSelect(BaseEventData eventData)
    {
        _instacnet = true;
    }
    EventSystem system;
    private bool _instacnet = false;
    // Use this for initialization
    void Start()
    {
        system = EventSystem.current;
    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.Tab) && _instacnet)
        {
            Selectable _Nect = null;
            if (Input.GetKey(KeyCode.LeftShift) || Input.GetKey(KeyCode.RightShift))
            {
                _Nect = system.currentSelectedGameObject.GetComponent<Selectable>().FindSelectableOnUp();
                if (_Nect == null) _Nect = system.lastSelectedGameObject.GetComponent<Selectable>();

            }
            else
            {
                _Nect = system.currentSelectedGameObject.GetComponent<Selectable>().FindSelectableOnDown();
                if (_Nect == null) _Nect = system.firstSelectedGameObject.GetComponent<Selectable>();
            }
            if (_Nect != null)
            {
                InputField inputField = _Nect.GetComponent<InputField>();
                system.SetSelectedGameObject(_Nect.gameObject, new BaseEventData(system));
            }
            else
            {
                Debug.LogError("没有下一个组件");
            }
        }
    }

}
复制代码

感谢支持!

 

posted @   剑起苍穹  阅读(1588)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
/*鼠标点击特效*/
点击右上角即可分享
微信分享提示