0

以编程方式将 UIButton 的目标设置为 IBAction 的以下代码是否有任何理由不起作用?

。H

- (IBAction)googleIt:(id)sender;

.m

UIButton *google = [[UIButton alloc] initWithFrame:CGRectMake(20.0, 15.0, 280.0, 40.0)];
[google addTarget:self action:@selector(googleIt:) forControlEvents:UIControlEventTouchUpInside];

(这是在考虑加载,这是在那之后)

-(IBAction)googleIt:(id)sender {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.google.com"]];
}

编辑:在googleIt之后添加了一个:仍然不起作用。当我在情节提要中添加一个按钮并将其连接到 IBAction 时,它可以工作,所以 IBAction 本身不是问题。

编辑:请求完整的按钮代码

 UIButton *google = [[UIButton alloc] initWithFrame:CGRectMake(20.0, 15.0, 280.0, 40.0)];
[google addTarget:self action:@selector(googleIt:) forControlEvents:UIControlEventTouchUpInside];
[google setTitle:@"Google 'em" forState:UIControlStateNormal];
[google setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
google.backgroundColor = [UIColor blackColor];
[charityInfo addSubview:google];

编辑:完成!未启用用户操作。有人可以提出这个答案,我会标记为真的吗?

4

1 回答 1

2

google 的选择器缺少冒号,表示它需要一个参数

它应该是

[google addTarget:self action:@selector(googleIt:) forControlEvents:UIControlEventTouchUpInside];

编辑,从评论中添加:选择器是问题的一部分,但在包含按钮的视图上未启用用户交互。

于 2013-05-17T17:10:47.843 回答