InputField(输入域):为文本输入控件,等同于NGUI的Input。

一、InputField组件:

Text Component(文本组件):此输入域的文本显示组件,需带有Text组件。

Text(文本):此输入域的初始值。

Character Limit(字符限制):限定此输入域最大输入的字符数,0为不限制。

Content Type(内容类型):限定此输入域的内容类型,包括数字、密码等。

Line Type(换行方式):当输入的内容超过输入域边界时;

single Line(单一行):超过边界也不换行,继续延伸此行,输入域中的内容只有一行;

multi Line Submit(多行):超过边界则换行,输入域中内容有多行;

multi Line Newline(多行):超过边界则新建换行,输入域中内容有多行。

Placeholder(位置标示):此输入域的输入位控制符,需带有Text组件。

注意,Placeholder对应的Text也为此输入框的提示语显示:(Enter text...为提示语,当输入框内容为空时,提示语可见,内容不为空时,提示语不可见)

Caret blink rate(光标闪烁速度):输入光标的闪烁速度。

Hide mobile input(手机端隐藏输入);

On Value Changed:值改变时触发消息。

End Edit:结束编辑时触发消息。

△最近发现了UGUI  InputField的一个BUG,我自己测试了很多遍,应该是BUG吧:

BUG描述:InputField的输入光标在本身已经active为false之后依然还显示在场景中;

触发这个BUG的方式:当一个InputField处于焦点状态(也就是光标在输入域内闪烁),当光标显示的时候(光标总是一闪一逝),立即隐藏该InputField自身的gameobject或者其任意父级的gameobject(代码中SetActive(false)或者在编辑器中直接勾掉整个gameobject,注意不是InputField的enabled),如果此时光标正好闪烁出现的话,那么光标就会一直显示在原地,而我们的整个InputField本身已经处于未激活状态了。

如下:

焦点这个InputField之后:

看到光标闪烁出来立刻隐藏他;

我们可以看到光标被孤立了(当然,光标一直比输入域高出一截这个问题也是相当的坑爹)。

△如何避免光标比输入域高的现象发生?

这个现象可以算是BUG也可以算是一种设定,InputField光标的大小与其中文本的大小一致,但他的位置却是始终上端对齐至InputField的目标Text Component上。

如下,如果你的InputField中输入的文本(123456)是上下居中对齐,那么光标的位置依然会保持在红箭头所指的位置(上端对齐),当然如果输入跳行的话光标还是会跳到下一行。

要避免出现这个问题的话,最好的方式就是所有输入域都统一保持左对齐和上对齐,如果非要居中对齐的话,那么整个Text的边框大小就尽量保持与文字大小一致,毕竟,居中对齐的输入域应该是不存在换行的吧,当然如果你非要这么做,那还是老老实实的靠边对齐吧。

Unity UGUI基础之InputField的更多相关文章

  1. Unity UGUI基础之Text

    Text作为UGUI最基础的控件以及最常用的控件,它在项目中的应用绝对可以算是最多的,任何一个UI界面可以说都离不开它,它的基本属性如下: 一.rect transform组件: rect trans ...

  2. Unity UGUI基础之Button

    UGUI Button,可以说是真正的使用最广泛.功能最全面.几乎涵盖任何模块无所不用无所不能的组件,掌握了它的灵巧使用,你就几乎掌握了大半个UGUI! 一.Button组件: Interactabl ...

  3. Unity UGUI基础之Image

    UGUI的Image等价于NGUI的Sprite组件,用于显示图片. 一.Image组件: Source Image(图像源):纹理格式为Sprite(2D and UI)的图片资源(导入图片后选择T ...

  4. Unity UGUI基础之Slider、Scrollbar

    Slider(滑动条):是一个主要用于形象的拖动以改变目标值的控件,他的最恰当应用是用来改变一个数值,最大值和最小值自定义,拖动滑块可在此之间改变,例如改变声音大小. Scrollbar(滚动条):是 ...

  5. Unity UGUI基础之Toggle

    Toggle组合按钮(单选框),可以将多个Toggle按钮加入一个组,则他们之间只能有一个处于选中状态(Toggle组合不允许关闭的话). 一.Toggle组件: Toggle大部分属性等同于Butt ...

  6. Unity UGUI

    超详细的基础教程传送门:(持续更新中) Unity UGUI之Canvas&EventSystem:http://blog.csdn.net/qq992817263/article/detai ...

  7. Unity UGUI实现图文混排

    目前在unity实现图文混排的好像都是通过自定义字体然后在文本获取字符的位置,用图片替换掉图片标签,这样对于支持英文来说,并没有什么影响.然后对于中文来说就是一个相当麻烦的事了,毕竟图文混排多用于游戏 ...

  8. Unity UGUI —— 无限循环List

    还记得大学毕业刚工作的时候是做flash的开发,那时候看到别人写的各种各样的UI组件就非常佩服,后来自己也慢慢尝试着写,发现其实也就那么回事.UI的开发其实技术的成分相对来说不算多,但是一个好的UI是 ...

  9. Unity UGUI图文混排源码(三) -- 动态表情

    这里是根据图文混排源码(二)进一步修改的,其他链接也不贴了,就贴一个链接就好了,第一次看这文章的同学可以先去看看其他几篇文章 Unity UGUI图文混排源码(二):http://blog.csdn. ...

随机推荐

  1. 2018年Java实习春招总结

    因为女票在北京,打算去北京实习,所以从去年12月开始复习Java,做项目,视频是看的黑马的视频,还可以吧,把Java基础和SSM框架看了下,做了个小项目,然后看牛客网的中级项目课,做了一个健身头条项目 ...

  2. 关于mysql安装到最后一步老是停留在starting server,显示无响应

    从昨天晚上到今天安装MySQL花了好长的时间,一直是在后面starting server 这部就显示无响应,查资料了解到是MySQL有残留,有些注册表文件需要手动清理,下面是具体方法. 1.先用卸载软 ...

  3. ABP文档笔记 - 配置、设置、版本、功能、权限

    配置 全局仅一个单例,保存一组配置信息,一般直接在模块的预启动事件中赋值or修改.没有Scope划分,无论租户还是房东亦或者用户读取的值都不会有差异.每个模块都可以扩展这个配置. 设置 它没有层级关系 ...

  4. 在Spring Boot框架下使用WebSocket实现消息推送

    Spring Boot的学习持续进行中.前面两篇博客我们介绍了如何使用Spring Boot容器搭建Web项目(使用Spring Boot开发Web项目)以及怎样为我们的Project添加HTTPS的 ...

  5. postgresql跨服务器复制数据库

    假设名为dbname数据库需要从A服务器拷贝到B服务器 接收服务器B postgres用户 需先重置B服务器postgres系统用户的密码,使之与数据库用户postgres一致: passwd -d ...

  6. 安卓高级8 SurfaceView (1)

    文章转载:http://www.cnblogs.com/xuling/archive/2011/06/06/android.html 首先我们先来看下官方API对SurfaceView的介绍 Surf ...

  7. 快速排序quick_sort(python的两种实现方式)

    排序算法有很多,目前最好的是quick_sort:unstable,spatial complexity is nlogN. 快速排序原理 python实现 严蔚敏的 datastruct书中有伪代码 ...

  8. 【SSH系列】Hibernate映射 -- 继承映射

    开篇前言 在前面的博文中,小编介绍了hibernate中的映射,一对一,一对多,多对多,单向,双向等,今天这篇博文,小编主要来介绍一下hibernate中的继承映射,小伙伴都知道在C#中,如果想要实现 ...

  9. ROS机器人程序设计(原书第2版)补充资料 (零) 源代码、资料和印刷错误修订等 2017年01月01日更新

    ROS机器人程序设计(原书第2版)补充资料 (零) 源代码等 ROS官网 版)部分内容修订 页:第1行,删去$ 页:第6行,float64 y 前面加一个空格 页:中间创建主题:下面程序不用换行,(& ...

  10. 【Unity Shader】2D动态云彩

    写在前面 赶在年前写一篇文章.之前翻看2015年的SIGGRAPH Course(关于渲染的可以去selfshadow的博客里找到,很全)的时候看到了关于体积云的渲染.这个课程讲述了开发者为游戏< ...