加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

objective-c – 如何创建或分配代理?

发布时间:2020-12-16 09:27:17 所属栏目:百科 来源:网络整理
导读:我如何成为代表?我有一个名为CustomSign的类.该类有一个与之关联的视图.该视图有2个元素.一个文本域和一个uilabel.我想在单击完成按钮时将文本字段数据复制到uilabel. 这是我在CustomSign.m中的代码 我不知道如何让它成为代表. -(void)textFieldDidEndEditi
我如何成为代表?我有一个名为CustomSign的类.该类有一个与之关联的视图.该视图有2个元素.一个文本域和一个uilabel.我想在单击完成按钮时将文本字段数据复制到uilabel.

这是我在CustomSign.m中的代码
我不知道如何让它成为代表.

-(void)textFieldDidEndEditing:(UITextField *)textField {
    [textField resignFirstResponder];
    label.text = textField.text;
}

解决方法

您需要在CustomSign.m文件中引用文本字段.这可以是您在Interface Builder中连接的插座,也可以直接存储对文本字段的引用(如果您是以编程方式创建它).

然后,调用文本字段的-setDelegate:方法将对象指定为委托:

//in CustomSign.m
- (void)awakeFromNib
{
    //assume textField is an ivar that is connected to the textfield in IB
    [textField setDelegate:self];
}

您还可以通过控制从文本字段拖动到对象来设置Interface Builder中文本字段的委托.

请注意,您不应该自己调用-resignFirstResponder.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读