我目前正在尝试创建一种tasktracker ..以下代码目前正常工作,但我需要它删除带有按钮标记的行..换句话说。
当按下带有标记:0的按钮时,删除带有标记的行:0
我所有的努力都失败了,所以我把它带给了专家。
- (void)buttonPressedAction:(id)sender
{
UIButton *button = (UIButton *)sender;
NSInteger *row = button.tag;
NSString *cleanedUp = [NSString stringWithFormat:@"%d", row];
if(button.titleLabel.text == @"Unchecked"){
[button setTitle:@"Checked" forState:UIControlStateNormal];
}
else{
[button setTitle:@"Unchecked" forState:UIControlStateNormal];
}
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:button.titleLabel.text
message:cleanedUp
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
}
答案 0 :(得分:1)
UITableView
有built-in capabilities to allow the deletion行。这可能更适合您想要完成的事情。这是一个example。
要使用自定义按钮,您需要使用beginUpdates
和endUpdates
来修改动态的表格视图。
NSInteger row = button.tag;
[tableView beginUpdates];
//make sure you remove the row from your datasource
//as well or an exception will be raised
[self.datasource removeObjectAtIndex:row]
[deleteRowsAtIndexPaths:[NSIndexPath indexPathForRow:row inSection:0]
withRowAnimation:UITableViewRowAnimationFade];
[tableView endUpdates];