gpt4 book ai didi

ios 中止 didSelectRowAtIndexPath

转载 作者:行者123 更新时间:2023-12-01 18:01:37 29 4
gpt4 key购买 nike

我想在某个条件不满足时中止这个方法,我该怎么做?

我不使用 tableView:willSelectRowAtIndexPath: 方法。我认为可以结合这两种方法来防止某些行被选择并被推送到另一个 ViewController 中?

编辑:

伙计们,非常感谢你们。

现在这段代码完美运行:

- (NSIndexPath*)tableView:(UITableView *)tableView1 willSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSUInteger totalcount = [totalarr count]; //totalarr is a global mutable array.

NSIndexPath *rowToSelect = indexPath;

if (totalcount == 0)
{
rowToSelect = nil;
}
return rowToSelect;

}

最佳答案

tableView:willSelectRowAtIndexPath:当将要选择一行时,将发送到 TableView 委托(delegate)。您的代表有机会更改选择,或通过返回 NSIndexPath 完全取消它。用于替代选择的对象,或 nil什么都不选。

因此,如果您想禁止选择某些行,请使用 tableView:t willSelectRowAtIndexPath:p ,请检查 p ,如果您不想选择它,只需返回 nil .如果这样取消选择,tableView:didSelectRowAtIndexPath:永远不会被调用。

不要“取消”didXXYY 里面的东西如果有机会在 willXXYY 中输入方法. did暗示选择已经提交; UIKit 可能已经显示了这一点,其他事件监听器可能已经响应,等等。它很容易导致奇怪的行为。

关于ios 中止 didSelectRowAtIndexPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8882665/

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