我想通过按钮操作传递一个url,因为我有10个按钮,这些代码是通过代码动态创建的,然后单击,然后为每个对应的按钮分配了一个特定的url。这是我的代码

NSString *linkUrl = [NSString stringWithFormat:@"%@",[AllrecordG objectForKey:@"Link"]];
[leftLabelG addTarget:self action:@selector(clickMe:linkUrl:) forControlEvents:UIControlEventTouchUpInside];

-(void)clickMe:(UIButton *)sender{
}

但是在这里,我收到“未使用的变量linkUrl”的警告。

我研究了不同的文章,但有人告诉我们不可能传递参数链接。任何人都可以告诉我,如何为每个按钮操作传递url,以及如何检索这些值。在clickMe定义中。

提前致谢。

最佳答案

像这样的UIButton子类:

MyButton.h

@interface MyButton : UIButton
{
     NSString *_linkUrl;
}

@property (nonatomic, retain) NSString *linkUrl

MyButton.m
@implementation MyButton
@synthesize linkUrl = _linkUrl

传递linkUrl:
NSString *linkUrl = [NSString stringWithFormat:@"%@",[AllrecordG objectForKey:@"Link"]];
[leftLabelG addTarget:self action:@selector(clickMe:) forControlEvents:UIControlEventTouchUpInside];
[leftLabelG setLinkUrl:linkUrl];

现在,您可以像这样在操作中获取linkUrl:
-(void)clickMe:(MyButton *)sender{
      NSString *url = sender.linkUrl;
}

10-06 13:09