6 iphone objective-c uialertview ios
我正在为我添加自定义按钮UITableViewCell.在该按钮的操作中,我想调用showAlert:函数并希望在方法中传递单元格标签.
如何在此showAlert方法中传递参数:action:@selector(showAlert:)?
小智 9
如果您在Tableviewcell中使用Button,则必须为每个单元格的按钮添加标记值,并将方法addTarget设置为id作为参数.
示例代码:
您必须在cellForRowAtIndexPath方法中键入以下代码.
{
// Set tag to each button
cell.btn1.tag = indexPath.row;
[cell.btn1 setTitle:@"Select" forState:UIControlStateNormal]; // Set title
// Add Target with passing id like this
[cell.btn1 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
return cell;
}
-(void)btnClick:(id)sender
{
UIButton* btn = (UIButton *) sender;
// here btn is the selected button...
NSLog(@"Button %d is selected",btn.tag);
// Show appropriate alert by tag values
}
Run Code Online (Sandbox Code Playgroud)
那是不可能的。您必须创建一个符合 IBAction 的方法
- (IBAction)buttonXYClicked:(id)sender;
Run Code Online (Sandbox Code Playgroud)
在此方法中您可以创建并调用 UIAlertView。不要忘记将按钮与 Interface Builder 中的方法连接起来。
如果您想区分多个按钮(例如,每个表格单元格中有一个按钮),您可以设置按钮的标签属性。然后检查sender.tag 点击来自哪个按钮。