UITextView作为inputAccessoryView,就像iMessage一样

时间:2016-03-24 13:55:57

标签: ios swift keyboard toolbar

我想拥有与iMessage输入相同的行为。我不知道我应该从什么开始,所以我将描述我想做什么,你可以(我希望)给我如何做到这一点的建议。我在Swift中编码,所以如果你提供任何代码,我希望它在Swift中。

我想要什么

我希望屏幕上有一个按钮(不是UITextViewUITextField),按下后会显示键盘,键盘的UIToolBar位置为{{1} }} 在里面。当我输入UITextView时,ToolBar / TextView会扩展到某一点,然后开始滚动。

我该怎么做?我已经尝试了一个小时但我似乎无法触发键盘,除非我有UITextViewUITextView设置为UITextField。此外,我不明白一旦我拿起键盘,我应该如何将becomeFirstResponder()附加到UITextView。我添加了UIToolBar,但没有添加UIToolBar

干杯

1 个答案:

答案 0 :(得分:-2)

这应该适合你:https://github.com/AlexLittlejohn/ALTextInputBar

它像你提到的一样增长,它也在屏幕的底部,就像输入配件视图一样。

  1. 在您的pods文件中复制粘贴

    pod 'ALTextInputBar'
    
  2. 运行您的podfile

  3. 像这样配置

    import ALTextInputBar
    
    class ViewController: UIViewController {
    
        let textInputBar = ALTextInputBar()
    
        // The magic sauce
        // This is how we attach the input bar to the keyboard
        override var inputAccessoryView: UIView? {
            get {
                return textInputBar
            }
        }
    
        // Another ingredient in the magic sauce
        override func canBecomeFirstResponder() -> Bool {
            return true
        }
    }