iphone:uitextfield,具有同一委托的多个文本字段?

发布于 2024-09-24 13:03:33 字数 238 浏览 2 评论 0原文

我的应用程序中有两个不同的文本字段,我将它们的 .delegate 属性设置为:self。 现在我实现了 uitextfielddelegate 协议的不同方法,但我希望能够单独控制两个文本字段。例如,我希望第一个文本字段在编辑开始时执行与第二个文本字段不同的操作...是此问题的唯一解决方案来设置分配不同的委托,还是有办法在两个文本字段都具有的情况下执行此操作分配给他们的同一个代表? 我希望我的问题是可以理解的,我尝试用最好的方式解释...... 提前致谢!

there are two different textfields in my applications and i set the .delegate property of both of them to: self.
Now i implemented different methods from the uitextfielddelegate protocol but i want to be able to control the two textfields individually. For instance i want the first text field to do something different when editing begins than the second textfield... Is the only solution to this problem to set the assign a different delegate or is there a way to do this with both of the textfield having the same delegate assigned to them?
I hope my question is understandable i tried it to explain the best way that i could.....
thanks in advance!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

海风掠过北极光 2024-10-01 13:03:33

初始化时在文本字段上设置 tag,然后检查传递到委托方法的 tag 中的 UITextField 对象,然后您就可以区分两个文本字段:

#define FIELD_ONE_TAG 1
#define FIELD_TWO_TAG 2

UITextField *textFieldOne = ...
textFieldOne.tag = FIELD_ONE_TAG;
...
UITextField *textFieldTwo = ...
textFieldTwo.tag = FIELD_TWO_TAG;


- (void)textFieldDidBeginEditing:(UITextField *)textField {
   if(textField.tag == FIELD_ONE_TAG) { //field one
   } else {//field two

   }
}

Set a tag on the textfield on initialization, then check the UITextField object that is passed into the delegate method's tag, then you'll be able to make a differentiation between the two textfields:

#define FIELD_ONE_TAG 1
#define FIELD_TWO_TAG 2

UITextField *textFieldOne = ...
textFieldOne.tag = FIELD_ONE_TAG;
...
UITextField *textFieldTwo = ...
textFieldTwo.tag = FIELD_TWO_TAG;


- (void)textFieldDidBeginEditing:(UITextField *)textField {
   if(textField.tag == FIELD_ONE_TAG) { //field one
   } else {//field two

   }
}
-残月青衣踏尘吟 2024-10-01 13:03:33
UITextField *textFieldOne=..... 

UITextField *textFieldTwo=....
- (void)textFieldDidBeginEditing:(UITextField *)textField {
if(textField == textFieldOne)
{ // field one code
}else{
//field two code
}
}

有插入文本视图的两个引用,您可以在委托方法中比较它们。不需要太多标签

UITextField *textFieldOne=..... 

UITextField *textFieldTwo=....
- (void)textFieldDidBeginEditing:(UITextField *)textField {
if(textField == textFieldOne)
{ // field one code
}else{
//field two code
}
}

have two references of the inserted text views and u can compare them at the delegate methods. Not much needed with tags

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文