IOS开发】@selector 调用方法,传递多参数。。
(2014-04-02 12:02:47)
1、首先,@selector 里面的方法不能传参数。。不要相信网上的。。都是复制粘贴的。
2、分三步走:1.设置tag。2.设置btn的调用方法。3.使用参数
2、看示例代码把。。
UIButton * markButton=[[UIButton alloc] initWithFrame:CGRectMake(280, 0, 30, 30)];
markButton.tag=@"参数值"; //这里是你要传递的参数值
[markButton addTarget:self action:@selector(addMark:)
forControlEvents:UIControlEventTouchUpIns
ide];
addMark函数做处理。
-(BOOL) addMark:(UIButton *)btn{
NSLog(@"%@",btn.tag];
}
2、分三步走:1.设置tag。2.设置btn的调用方法。3.使用参数
2、看示例代码把。。
addMark函数做处理。
-(BOOL) addMark:(UIButton *)btn{
}
******************************************************
针对有人提问:btn.tag多参数的时候可以处理成一个json串或者字典的形式
******************************************************
现在看来!上面的做法是挺不合理的。。
1、正确的做法可以将需要传递的参数放入到一个数组/字段里面。
2、通过button的tag值也好,去找数组/字典对应的值
例如:button的tag值为101
那么可以在字典里面存入一个值dic的 ["101":"这里是值"]
当点击button按钮的时候通过btn.tag可以获取到dic 的key,就可以得到值了。。。。