view.tag仅存储NSInteger值。
那么,如何用 NSString Value 来标识每个 View 呢?
不可用?
一些例子:
view0.stringTag = @"basic";
view1.stringTag = @"advanced";
最佳答案
UIView
上没有 stringTag
属性。如果您需要执行此类操作,您可以在 UIView
上使用类别并将标签存储在关联的对象中:
@interface UIView (StringTagAdditions)
@property (nonatomic, copy) NSString *stringTag;
@end
@implementation UIView (StringTagAdditions)
static NSString *kStringTagKey = @"StringTagKey";
- (NSString *)stringTag
{
return objc_getAssociatedObject(self, kStringTagKey);
}
- (void)setStringTag:(NSString *)stringTag
{
objc_setAssociatedObject(self, kStringTagKey, stringTag, OBJC_ASSOCIATION_COPY_NONATOMIC);
}
@end
关于iphone - 如何使用 NSString 标签识别 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7885955/