gpt4 book ai didi

ios - TableView 中无法删除显示消息行

转载 作者:行者123 更新时间:2023-11-28 15:06:26 25 4
gpt4 key购买 nike

我有一个 TableView ,当用户在行上滑动时显示删除按钮。

一切正常,但由于条件很少,无法删除几行。我如何在 UI 上显示一条消息,告知该行无法删除。我有以下代表实现

tableView:canEditRowAtIndexPath:

如果行是否需要删除,则返回 true 和 false。

但是当用户登陆屏幕或调用重新加载 TableView 时会调用此方法,因此我不能在不放置一些奇怪的 if 条件的情况下将代码放入此委托(delegate)中。

我在委托(delegate)中得到了这个

tableView:editingStyleForRowAtIndexPath:

只有在用户滑动时才会被调用。但是这个委托(delegate)的问题是,在 iOS 10.2 中,这个委托(delegate)之前的每一行都会被调用,canEditRowAtIndexPath 被调用,所以它可以工作。但在最新的 iOS 11.2.2 中,editingStyleForRowAtIndexPathcanEditRowAtIndexPath 之后被调用,这导致只调用那些可以删除的行,而不调用其他行。iOS 11.2 中的这种模式确实有意义,但它不允许我在我的解决方案中使用这个委托(delegate)。谁能建议我如何实现所需的行为?

最佳答案

试试这个:

-(BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath{
// Set Condition which row delete
NSString *isDeleteorNot = [[arrInstaAccountList objectAtIndex:indexPath.row] objectForKey:@"Status"];

// Set your if condition
if ([isDeleteorNot isEqualToString:@"delete"])
{
return true;
}
else
{
return false;
}
}


-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{


// Set Condition which row delete
NSString *isDeleteorNot = [[arrInstaAccountList objectAtIndex:indexPath.row] objectForKey:@"Status"];

// Set your if condition
if ([isDeleteorNot isEqualToString:@"delete"])
{
cell.Toast.text = @"Delete";
}
else
{
cell.Toast.text = @"Not Delete";

}

}

关于ios - TableView 中无法删除显示消息行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48393739/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com