FairyGUI.InputTextField.__focusIn C# (CSharp) Method

__focusIn() private method

private __focusIn ( EventContext context ) : void
context EventContext
return void
        void __focusIn(EventContext context)
        {
            if (!editable || !Application.isPlaying)
                return;

            if (Stage.keyboardInput)
            {
                Stage.inst.OpenKeyboard(textField.text, false, _displayAsPassword ? false : !textField.singleLine,
                    _displayAsPassword, false, null, keyboardType);
            }
            else
            {
                Input.imeCompositionMode = IMECompositionMode.On;
                _editing = true;

                if (_caret == null)
                    CreateCaret();

                if (!string.IsNullOrEmpty(_promptText))
                    UpdateAlternativeText();

                float caretSize;
                //如果界面缩小过,光标很容易看不见,这里放大一下
                if (UIConfig.inputCaretSize == 1 && GRoot.contentScaleFactor < 1)
                    caretSize = (float)UIConfig.inputCaretSize / GRoot.contentScaleFactor;
                else
                    caretSize = UIConfig.inputCaretSize;
                _caret.SetSize(caretSize, textField.textFormat.size);
                _caret.DrawRect(0, Color.clear, textField.textFormat.color);
                AddChild(_caret);

                _selectionShape.Clear();
                AddChild(_selectionShape);

                _caretPosition = textField.text.Length;
                TextField.CharPosition cp = GetCharPosition(_caretPosition);
                AdjustCaret(cp);
                _selectionStart = cp;
            }
        }