内容简介:翻译自:https://stackoverflow.com/questions/10910306/how-to-implement-addtarget-property-in-a-uibutton
我有一个函数(例如function1),我有一个按钮和一个名为auxiliarStruct的对象,我有这条线:
[btn addTarget:self action:@selector(userSelected:) forControlEvents:UIControlEventTouchUpInside];
但是在@selector(userSelected)中我需要将该函数中所需的对象作为参数传递,但我不知道如何实现它.
我在这里声明了这个对象:
//UsersController.h
#import <UIKit/UIKit.h>
@interface UsersController : NSObject{
NSInteger *prof_id;
NSString *createTime;
NSString *fullName;
NSString *thumb;
}
@property (nonatomic) NSInteger *prof_id;
@property (nonatomic, retain) IBOutlet NSString *createTime;
@property (nonatomic, retain) IBOutlet NSString *fullName;
@property (nonatomic, retain) IBOutlet NSString *thumb;
@end
我有这样声明的被调用函数:
-(void)userSelected:(id)sender{
//CODE
}
我有一个这个类的对象,叫做auxiliarStruct,这就是我需要的.我试过了
[btn addTarget:self action:@selector(**userSelected:auxiliarStruct**)forControlEvents:UIControlEventTouchUpInside];
但它不起作用
谁能帮我?谢谢.
ps:对不起我的英语,我知道这很糟糕
您只能使用addTarget @selector方法将(UIButton *)对象作为参数传递.您可以设置UIButton标记并在被调用函数上使用它.您可能想要找出发送字符串值的任何替代方法.
使用以下代码通过按钮传递标记:
btn_.tag = 10;
[btn_ addTarget:self action:@selector(functionName:) forControlEvents:UIControlEventTouchUpInside];
按钮操作应如下所示:
- (void) functionName:(UIButton *) sender {
NSLog(@"Tag : %d", sender.tag);
}
翻译自:https://stackoverflow.com/questions/10910306/how-to-implement-addtarget-property-in-a-uibutton
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- CSS 属性篇(七):Display属性
- JavaScript对象之数据属性与访问器属性
- Logback file属性 与 fileNamePattern属性的关系
- 浅谈Spring Boot 属性配置和自定义属性配置
- python – Django属性错误. ‘module’对象没有属性’rindex’
- 深度解析属性动画的思想 - 带你手动实现属性动画框架
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Web开发敏捷之道
Sam Ruby、Dave Thomas、David Heineme Hansson / 慕尼黑Isar工作组、骆古道 / 机械工业出版社 / 2012-3-15 / 59.00元
本书第1版曾荣获Jolt大奖“最佳技术图书”奖。在前3版的内容架构基础上,第4版增加了关于Rails中新特性和最佳实践的内容。本书从逐步创建一个真正的应用程序开始,然后介绍Rails的内置功能。全书分为3部分,第一部分介绍Rails的安装、应用程序验证、Rails框架的体系结构,以及Ruby语言的知识;第二部分用迭代方式创建应用程序,然后依据敏捷开发模式搭建测试案例,最终用Capistrano完成......一起来看看 《Web开发敏捷之道》 这本书的介绍吧!