个人学习笔记,如有错误、疑问、建议,欢迎留言。
声明:本文不得以任何形式进行转载。


前言:在进行Unity编辑器开发时,经常遇到一个组件的聚焦问题:可以更改的组件,如果通过其他方式对其进行更新(即不是直接对这个组件本身进行的修改),聚焦的组件不会立即刷新。


通过下面这个简单的界面来演示一下这个问题:

using UnityEngine;
using UnityEditor;public class Test : EditorWindow
{public string str = string.Empty;public string str2 = string.Empty;  [MenuItem("Tools/Test")]static void ShowWindow(){EditorWindow.GetWindow(typeof(Test));}private void OnGUI(){str = EditorGUILayout.TextField(str);if(GUILayout.Button("重置")){str = string.Empty;}str2 = EditorGUILayout.TextField(str2);}
}

演示如下:

 在这里,"重置"按钮实现的功能是重置第一个输入框。但是我们可以看到,当我们在输入框1输入内容之后,当我们点击"重置"按钮时,因为我们的焦点还在输入框1上(图中蓝色的边框),输入框1并没有重置,当我们点击其他组件时(即下面那个输入框),输入框1便会重置。


解决办法:
 可通过下面两种方式,将聚焦的组件设置为null

//第一种方式
GUI.FocusControl(null);//第二种方式
GUIUtility.keyboardControl = 0;

Unity编辑器开发——组件聚焦问题相关推荐

  1. Unity编辑器开发(五):实战、开发一个AB包编辑器工具

    前言 在我们上一篇(Unity编辑器开发(四):实战.开发一个AB包编辑器工具)的结尾,我们拥有了如下图中那样的一个编辑器窗口: 接下来我们来完成最后部分,也就是包括创建AB包,清理AB包,删除AB包 ...

  2. Unity编辑器开发:2020更新

    正所谓:人靠衣装,佛靠金装.学会插件开发,成就大神人生. 欢迎关注公众号:雷潮课堂 编辑器开发 一.课程内容 1-1本课程目标 1-2插件开发的起因 1-3插件的作用 二.菜单项制作 2-1菜单项(M ...

  3. Unity编辑器开发(七)——Scene界面拓展之Handles

    个人学习笔记,如有错误.疑问,欢迎留言. 声明:本文不得以任何形式进行转载.  前言:在Unity编辑器拓展时,一个很重要的部分便是在Scene界面进行拓展,通过可视化的显示UI控件,并能响应用户的操 ...

  4. Unity 编辑器开发实战【Custom Editor】- AudioDatabase Editor 音频库编辑器

    本文实现一个音频库的自定义编辑器,效果如图: 开始实现之前,首先简单介绍该音频库模块,音频库类Audio Database继承自Scriptable Object类,是一个可配置的资源文件: 包含的内 ...

  5. Unity编辑器开发——通过模板创建Lua脚本的两种方式(一)

    个人学习笔记,如有错误.疑问.建议,欢迎留言. 声明:本文不得以任何形式进行转载.  前言:在Unity编辑器的Project界面,可以直接右键创建C#脚本,而目前许多游戏公司使用的是tolua.xl ...

  6. Unity编辑器开发笔记

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 注意事项 Inspector面板一些常用C#特性 重写Inspector面板 顶部菜单栏 弹出窗口 注意事项 编辑器开发的代 ...

  7. 基于Unity编辑器开发技能编辑器(一)

    编辑器拓展介绍 常见的Unity编辑器拓展使用主要是创建自定义的窗体进行使用,包括剧情编辑器,动画编辑器,技能编辑器等等.最常使用的就是 EditorGUI,EditorGUILayout,GUI. ...

  8. Unity 编辑器开发实战【Custom Editor】- FSM Editor

    本文介绍如何为FSM有限状态机模块实现一个自定义编辑器面板,FSM的详细代码在上一篇文章中有介绍,链接地址: 在Unity中构建FSM有限状态机 下面是最终效果: 首先,自定义一个编辑器面板,需要用到 ...

  9. Unity 编辑器开发实战【Custom Editor】- 为UI视图制作动画编辑器

    为了更方便地为UI视图添加动画,将动画的编辑功能封装在了UI View类中,可以通过编辑器快速的为视图编辑动画.动画分为两种类型,一种是Unity中的Animator动画,该类型直接通过一个字符串类型 ...

最新文章

  1. javascript的date对象
  2. Producing Simple Graphs with R
  3. 2019热门JAVA面试问题
  4. 互斥信号量的等待与通知
  5. html怎么显示直线,html怎么用鼠标画出一条直线,鼠标移动时候要能看到线条
  6. 通过源码的方式编译hadoop的安装文件
  7. CentOS安装和配置Rsync进行文件同步
  8. android sdk 目录说明,Android的sdk、api及工程目录说明
  9. ansible解决python版本依赖
  10. 9600kf功耗和温度评测_i5-9400F与i5-9600KF性能差距大吗?i5 9600KF和9400F区别对比
  11. 微软紧急修复 Windows codecs 库中的两个 RCE 漏洞
  12. Android MVP架构简析
  13. qt 5.12.1 下载安装详细教程
  14. html制作日程安排,在线日程安排怎样做?日程表在线制作工具
  15. Self-critical Sequence Training
  16. 数据库系统的核心:数据模型
  17. CVPR2019| 中科院VIPL实验室11篇CVPR解读:弱监督学习、视频分割、目标检测
  18. Hexo博客(Snail主题)搭建回顾概览
  19. 诺基亚wp手机安装linux,1小时搞定 普通用户3步轻松更新WP8.1
  20. 从非洲血库到热带雨林:为什么普惠联接是社会的数字化支点?

热门文章

  1. 【Qt象棋游戏】02_绘画象棋棋盘
  2. 读懂婴幼儿语音和图像数据,打造AI宝宝看护管家
  3. Dialog常用对话框
  4. ls -l 各字段详解
  5. 漫步线性代数二——线性方程的几何形状
  6. 输入三个整数x,y,z,请把这三个数由小到大输出 (Java经典编程案例)
  7. 增加外链的优势和注意事项
  8. 元数据驱动应用设计_设计驱动的应用内购买:创造可持续的获利能力
  9. [周榜单]极乐小程序榜单(第十二期)
  10. dm数据库无法用序列自动生成主键,无法解析的成员访问表达式【SEQ_STU_CON_NEXTVAL】