我的主视图上有3个按钮(btn_easy,btn_medium,btn_hard),我通过xCode Interface Builder Library - Round Rect Button项目拖到我的主视图上。在我的ViewController.h和ViewController.m文件中声明它们之后:
//ViewController.h
IBOutlet UIButton *btn_easy;
IBOutlet UIButton *btn_medium;
IBOutlet UIButton *btn_hard;
@property(nonatomic,retain) IBOutlet UIButton *btn_easy;
@property(nonatomic,retain) IBOutlet UIButton *btn_medium;
@property(nonatomic,retain) IBOutlet UIButton *btn_hard;
//ViewController.m
@synthesize btn_easy,btn_medium,btn_hard;
然后,我通过在我的视图中单击btn_easy,btn_medium,btn_hard(顺序),转到Connection Inspector并将“New Referencing Outlet”拖动到“”,继续将Interface Builder中的连接插座设置为“文件所有者”。文件所有者“(不确定这是否是我应该在这里做的)。
使我的ViewController.m文件中的按钮工作的方法如下:
-(void)buttonPressed: (id) sender{
NSLog(@"button clicked = %@",sender);
}
我的问题是,当我点击任何一个按钮时,当我点击btn_easy时,实际上应该看到“button clicked = btn_easy”时,我的NSLog中没有任何内容出现,依此类推。
请帮助..... 谢谢
答案 0 :(得分:2)
我认为你已经混淆了出口和行动。一个出口 - 正如你所定义的那样 - 使一个类别与另一个类别向外连接。控件可以触发一个动作。
您应该将buttonPressed添加到.h中:
- (IBAction)buttonPressed:(id)sender;
让Interface Builder将其识别为操作。然后,您可以控制 - 从按钮拖动链接到您的类(似乎是文件所有者)并将两者连接起来。我想,你想做三次。
这与将“内部触摸”链接拖到您的班级时相同,即当按钮在iOS上生效时。