UITextFIEld *object1,*object2;//Initialize it[object1 setDelegate:self];[object2 setDelegate:self];[object1 setTag: 1]; [object2 setTag: 2];
为了更容易和“美丽”理解代码,您可以创建一个枚举.
typedef enum { MyTextFIEld1 = 1,MyTextFIEld2} allTextFIEld;
所以,你不会只放一个数字,可以用这种方式设置标签:
[object1 setTag: MyTextFIEld1];[object2 setTag: MyTextFIEld2];
在任何委托功能中,您可以更轻松地对待它
- (BOol)textFIEldShouldClear:(UITextFIEld *)textFIEld { switch(textFIEld.tag) { case MyTextFIEld1: return YES; case MyTextFIEld2: return NO; }}
但是,当您在XCode中构建Interface Builder时,可以在此字段中设置标记:
但如果我设置它,我会收到:
在Interface Builder中无法设置标签而不是数字?
解决方法 在IB中无法使用枚举.因为IB文件是序列化对象.当它们在运行时加载时,它们无法引用枚举的名称. 总结以上是内存溢出为你收集整理的objective-c – 将enum或#define标记设置为接口构建器中的对象全部内容,希望文章能够帮你解决objective-c – 将enum或#define标记设置为接口构建器中的对象所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)