- 平常开发时经常会遇到传参数的问题,比如一个button的响应事件里面想获取到某一个参数,我一般用到两种方法:
- 定义一个成员变量来进行参数的传递
- 给button绑定一个参数,直接通过button获取参数,方便快捷!
直接定义一个UIView的分类,代码如下:
#import <UIKit/UIKit.h>
@interface UIView (Parameter)
- (void)setParameter:(NSDictionary *)parameter;
- (NSDictionary *)parameter;
@end
#import "UIView+Parameter.h"
static void *kParameterKey = &kParameterKey;
@implementation UIView (Parameter)
- (void)setParameter:(NSDictionary *)parameter {
objc_setAssociatedObject(self, &kParameterKey, parameter, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
}
- (NSDictionary *)parameter {
return objc_getAssociatedObject(self, &kParameterKey);
}
@end
一般控件基本都是继承自UIView,所以直接写一个UIView的分类添加一个参数,一劳永逸~,以后其他UIAlertView,UIButton参数传递方便很多!
网友评论