我想在自定义单元格中显示带有按钮的警报。 我怎样才能在Objective C中做到这一点? 感谢
答案 0 :(得分:1)
将容器 weak
的{{1}}实例传递到自定义表格视图单元格。
该单元格将使用此传入 View Controller
来显示View Controller
。
实现此目的的一些示例代码如下所示:
UIAlertController
答案 1 :(得分:1)
您只需要创建一个带有标签和按钮的自定义单元格,无论您想在其中显示什么。
<强> CustomTableViewCell.h 强>
#import <UIKit/UIKit.h>
@interface CustomTableViewCell : UITableViewCell
@property (weak, nonatomic) IBOutlet UILabel *lblName;
@property (weak, nonatomic) IBOutlet UIButton *btnAlert;
@end
<强> CustomTableViewCell.h 强>
#import "CustomTableViewCell.h"
@implementation CustomTableViewCell
- (void)awakeFromNib {
[super awakeFromNib];
// Initialization code
}
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
[super setSelected:selected animated:animated];
// Configure the view for the selected state
}
@end
现在,在您的控制器中,您需要创建表视图并提供自定义单元格并绑定 cellForRowAtIndexPath 中的按钮方法。
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return 10;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static N
SString *simpleTableIdentifier = @"CustomTableViewCell";
CustomTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];
if (cell == nil) {
cell = (CustomTableViewCell*)[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableIdentifier];
}
cell.lblName.text = [NSString stringWithFormat:@"%ld",(long)indexPath.row];
cell.btnAlert.tag = indexPath.row;
[cell.btnAlert addTarget:self action:@selector(alertButtonClicked:) forControlEvents:UIControlEventTouchUpInside];
return cell;
}
-(IBAction)alertButtonClicked:(id)sender
{
[[[UIAlertView alloc] initWithTitle:@"Alert" message:@"Button Clicked" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"OK", nil] show];
}