InputField

1. 图1(a) 中的“input”物体是携带InputField控件的主物体,搭建UI的时候,把底图、背景图放在它外面,并且是上面,

因为同级物体来讲,排在下面的会遮挡排在上面的。

InputField_第1张图片

                   图1 (a)

InputField_第2张图片

                    图1 (b)

 

2.为控件指定Text文本框和Placeholder占位文字。

(1)所谓占位文字就是类似于提示文本,如图3中的“点击输入消息”.

placeholder会在用户开始编辑文本的时候自动消失,但如果只是点进去却没开始输入的时候,是不会消失的。

(2)如果你希望用户刚点击进入文本框的时候placeholder就自动消失,恐怕你需要绑定一个button控件,

当监测到点击事件时,触发以下逻辑:先隐藏placeholder,再激活文本框(就是把光标放进文本框里)。

(3)如何用代码激活文本框:通过ActivateInputField()方法,使用说明见图2(截自官方手册);如果你是

在xlua框架下,那么调用这个方法的时候别忘了要用 “ :”调用  而不是   “.” 。

InputField_第3张图片

 

                                              图 2

 

         图3

 

3.再说一说光标, 运行游戏并激活InputField控件后,控件会自动产生光标并将其作为自己下面的

第一个子物体(如图4),所以最好在搭建UI的时候把“Text”放在同级物体的最上面,这样进入游戏后光标

和Text文本框是紧挨着的。如果你在最上面放的是一张底图,那么在游戏里光标和文本框之间会

隔着一张图,带来不必要的困惑(比如:咦,光标去哪儿了?我咋看不见?)。

 

 

InputField_第4张图片

 

                         图4

4. InputField控件的文本监听实现:onValueChanged(当内容改变)、onEndEdit(当结束编辑)

以下来自官方手册:

 

InputField_第5张图片

 

 InputField_第6张图片

 

 

如果是在xlua框架下,别忘了AddListener方法通过“:”来调用,而不是 “.” 。

 

你可能感兴趣的:(InputField)