我怎么能抓住我按下的按钮?

时间:2012-01-05 03:36:35

标签: ios objective-c cocoa-touch uibutton uiimage

有什么方法可以抓住我按下的按钮吗?

按钮是使用for循环以编程方式创建的。

我有一个图像的滚动视图(我使用图像按钮),用户从相机拍摄图像。因此,在用户拍照后," new"图片将显示在滚动视图中,其中包含" old"图片。图片缩小为更小的尺寸所以我想要的是当我点击(任何图像的)按钮时,图像将以实际尺寸弹出另一个视图。

使用for循环创建图像按钮。但是,我不知道如何掌握用户按下的按钮。现在,当我按下按钮(无论哪个图像/按钮)时,最后拍摄的照片将始终显示。

谢谢你的时间。

2 个答案:

答案 0 :(得分:1)

您可以使用按钮的tag属性。

创建按钮时,请为每个图像按钮添加标签。

for(int i = 0 ; i < your_no_images ; i++){
  UIButton *button = [UIButton <yourbuttontype>];
 -----
  button.tag   = i;
  [button addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside];
  [yourView addSubView:button];
}

现在在按钮中单击操作..

-(void)buttonClicked:(UIButton*)sender{
   //if you has an array of UIImage's
   UIImage *clickedImage = (UIImage *)[yourImageArray objectAtIndex:sender.tag];
}

答案 1 :(得分:0)

IBAction方法(如单击按钮时触发的方法)包含sender参数。 sender是触发操作的对象,例如单击的按钮。像这样:

- (IBAction)buttonWasClicked:(id)sender
{
    NSLog(@"The %@ button was clicked", (UIButton *)sender.currentTitle);
}