首先声明这个方法非我原创!
这是一个同学想出来的
下面我们来说一下具体实现,使用tag值时,因为是一个毫无意义的数字,使用起来不免麻烦;加入我们使用字符串来设置tag值,例如:aLabel的tag值为“aLabel”,我们定义视图的时候,肯定不会定义相同名字的,那么这样是不是就更便于记了呢。
下面就来具体说说怎么实现吧,
首先我们要为UIView设置类目: " UIView+Tag "
UIView+Tag.h :
#import <UIKit/UIKit.h>
@interface UIView (Tag)
- (void)setTagWithName:(NSString *)name;
- (UIView *)viewWithTagName:(NSString *)name;
@end
UIView+Tag.m :
#import "UIView+Tag.h"
@implementation UIView (Tag)
/**
* tag值得偏移
*/
static int tagOffSet = 1000;
/**
* 数组单例,存储所有的字符串tag值
*
* @return 存储tag值得数组
*/
- (NSMutableArray *)getTagNameArray
{
static NSMutableArray * tagNameArray = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
tagNa