Ios 如何检测正在编辑的文本视图

Ios 如何检测正在编辑的文本视图,ios,swift,textview,Ios,Swift,Textview,我的视图中有两个文本视图,我希望它们都是可编辑的 但每一条都属于我数据库中的不同记录 如何检测正在编辑的textView 这是到目前为止我的代码 func textViewDidChange(textView: UITextView) { //Handle the text changes here if(textView.textAlignment == .Center){ PFUser.currentUser()!["bio"] = textView.text

我的视图中有两个文本视图,我希望它们都是可编辑的

但每一条都属于我数据库中的不同记录

如何检测正在编辑的textView

这是到目前为止我的代码

  func textViewDidChange(textView: UITextView) { //Handle the text changes here
    if(textView.textAlignment == .Center){
        PFUser.currentUser()!["bio"] = textView.text
        PFUser.currentUser()!.saveInBackground()
    }
    else{
        PFUser.currentUser()!["displayName"] = textView.text
        PFUser.currentUser()!.saveInBackground()
    }
}
我现在做的是检测视图是右对齐还是中心对齐,以便能够区分它们。
这是可行的,但并不理想,因为我想让它们都居中对齐。但我不知道textView对象中的哪个字段将包含ID或某种标识函数调用哪个textView的方法。

只要您具有引用两个文本视图的属性,您就可以简单地看到哪个文本视图被传递给了您的委托,并相应地采取行动:

func textViewDidChange(textView: UITextView) { //Handle the text changes here

    guard let currentUser = PFUser.currentUser() else {
        return
    }
    if (textView == self.bioTextView){
        currentUser["bio"] = textView.text
        currentUser.saveInBackground()
    } else {
        currentUser["displayName"] = textView.text
        currentUser.saveInBackground()
    }
}

只要您具有引用这两个文本视图的属性,您就可以简单地看到哪个文本视图被传递给了您的代理,并相应地执行操作:

func textViewDidChange(textView: UITextView) { //Handle the text changes here

    guard let currentUser = PFUser.currentUser() else {
        return
    }
    if (textView == self.bioTextView){
        currentUser["bio"] = textView.text
        currentUser.saveInBackground()
    } else {
        currentUser["displayName"] = textView.text
        currentUser.saveInBackground()
    }
}

每个文本视图都有属性(IBOutlets)吗?如果是这样的话,只需将提供给委托方法的文本视图与属性进行比较,看看是哪一个。是的,我已经为每个文本视图创建了IBOutlets,但是比较文本视图属性是什么意思?例如if(textView==t_view1)?假设t_view1是特定文本视图的IBOutlet变量。您也可以将不同的
标记分配给
textview
,并在
代理中检查它,作为
textview.tag
。如果您将
textViewOne
设置为
IBOutlet
,您只需通过
textview==textViewOne
进行检查就可以了只有在没有引用的情况下才是硬的每个文本视图都有属性(IBOutlets)吗?如果是这样的话,只需将提供给委托方法的文本视图与属性进行比较,看看是哪一个。是的,我已经为每个文本视图创建了IBOutlets,但是比较文本视图属性是什么意思?例如if(textView==t_view1)?假设t_view1是特定文本视图的IBOutlet变量。您也可以将不同的
标记分配给
textview
,并在
代理中检查它,作为
textview.tag
。如果您将
textViewOne
设置为
IBOutlet
,您只需通过
textview==textViewOne
进行检查就可以了只有在你没有参考资料的情况下才很难