如何通过使用 Swift 单击按钮以编程方式将文本输入 UITextView

How to programmatically enter text into a UITextView by Clicking a Button using Swift

我有一个 UITextView 和两个 UIButtonButtonOneButtonTwo)。我想通过单击 ButtonOneButtonTwoUITextView 中输入文本。

例如,如果我点击 ButtonOne,它应该在 UITextView 中输入“apple”,然后如果我点击 ButtonTwo,它应该在 [=] 中输入“orange” 12=]。因此,在我依次单击这两个按钮后,我的 UITextView 中应该有以下文本:

apple orange

我目前实际上可以通过使用以下代码行来做到这一点:

myTextView.text = myTextView.text.stringByAppendingString("orange ")

但是问题是,当我在 myTextView 中输入一些文本后,如果我手动在 myTextView 中输入一些文本(使用键盘),然后再次单击 ButtonOne(或 ButtonTwo),所有手动输入的文本从 myTextView 中删除,我只剩下通过单击按钮输入的文本。

我希望能够通过单击按钮以及交替使用键盘输入来输入文本。

我可以在 .NET 应用程序中使用 RichTextBox 控件轻松地完成此类操作。因此,我在这方面遇到的一个相关问题是 iOS.

中的 .NET RichTextBox 控件的等效项

尝试以下 code.

@IBOutlet weak var yourTextView: UITextView!

    @IBAction func appleTap(sender: AnyObject) {
        yourTextView.text = yourTextView.text .stringByAppendingString("Apple ")
    }

    @IBAction func OrangeTap(sender: AnyObject) {
        yourTextView.text = yourTextView.text .stringByAppendingString("Orange ")
    }

以上 code 对我有用,如果您仍有问题,请在 questionwrite your code

为什么不能像下面的例子那样使用 .text。我有点困惑你想做什么。你能 post 你的代码吗?我希望这对您和未来的观众有所帮助。

import UIKit
@IBOutlet weak var yourUITextView: UITextView = UITextView!

@IBAction changeTextApple(sender: UIButton) {
    yourUITextView.text = "Apple"
}

@IBAction changeTextOrange(sender: UIButton) {
    yourUITextView.text = "Orange"
}