- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我有一个 NSMutableOrderedSet。
我需要枚举它,看起来唯一构建到集合上的选项是基于 block 的。所以选择最简单的基于 block 的选项,我有这样的东西......
[anNSMutableOrderedSet enumerateObjectsUsingBlock:^(id _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if ([(SomeClass*)obj isWhatIWant]) {
*stop = YES;
// Ok, found what I'm looking for, but how do I get it out to the rest of the code?
}
}]
最佳答案
您可以使用 __block 在完成 block 中分配一些值。
__block yourClass *yourVariable;
[anNSMutableOrderedSet enumerateObjectsUsingBlock:^(id _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if ([(SomeClass*)obj isWhatYouWant]) {
yourVariable = obj;
*stop = YES;
}
}]
NSLog(@"Your variable value : %@",yourVariable);
关于ios - 如何返回 enumerateObjectsUsingBlock 找到的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36306877/
我需要遍历 NSArray 来计算一些指标(总高度)。这是我的代码: __block CGFloat height = someInitialValue; [messages enumerateObj
我有这样的情况,我正在使用 enumerateObjectsUsingBlock 迭代我的数组对象,我需要等待迭代完成然后它应该执行进一步的代码,我怎样才能实现这个,或者如果我应该使用任何替代方法,下
在以下代码片段 (self.searchResults) 中调用 self 时,我是否应该使用 weakSelf: [self.restaurants enumerateObjectsUsingBlo
我有一个 NSMutableOrderedSet。 我需要枚举它,看起来唯一构建到集合上的选项是基于 block 的。所以选择最简单的基于 block 的选项,我有这样的东西...... [anNSM
给这个代码 NSMutableArray *array = [NSMutableArray new]; for (int i = 0; i < 10000; i++) { [array add
当我在 NSArray 上搜索 enumerateObjectsUsingBlock 时,偶然去了 NSSet Class Reference,它提供了相同的方法签名...... Doc 说 Exec
我使用快速枚举并在枚举 block 中异步发送网络请求。 那么 enumerateObjectsUsingBlock 会发生什么:只需超快地调用 block 并让枚举 block 在一段时间后完成。
我想知道如何将以下内容转换为 Swift。我已经尝试过了,但一直停留在一个概念上: 我正在使用我的属性 UICollectionViewLayoutAttributes 遍历所有对象 [newVisi
我想引用具有特定类型的枚举对象,而不仅仅是通用的 AnyObject!,但在文档中找不到任何关于它的信息。 enumerateObjectsUsingBlock 在 Swift 中的签名是: func
以下两种方式的优缺点是什么: enumerate using block NSArray *myArray = [NSArray new]; [myArray enumerateObjectsUsin
如何停止区 block 枚举? myArray.enumerateObjectsUsingBlock( { object, index, stop in //how do I
除了明显的区别: 同时需要索引和对象时使用 enumerateObjectsUsingBlock 当你需要修改局部变量时不要使用enumerateObjectsUsingBlock(我错了,看bbum
我遇到了以下编译错误: Cannot invoke 'enumerateObjectsUsingBlock' with an argument list of type '((_, _, _) ->
这是一个错误吗? 我有这样几行: [myArray enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) { NS
在 Swift 2.2 之前,我可以通过使用 var 使停止参数可变然后适本地设置它来停止枚举 stop = UnsafeMutablePointer.alloc(NSNumber(bool: tru
我在将此 block 代码从 Objective C 转换为 Swift 时遇到了问题。我在网上搜索了一些示例,但没有一个修复了我遇到的错误。 如有任何帮助,我们将不胜感激。 - (void)didR
这个问题在这里已经有了答案: Collection was mutated while being enumerated error in objective C (6 个答案) 关闭 9 年前。
这个问题在这里已经有了答案: What is the BOOL *stop argument for enumerateObjectsUsingBlock: used for? (1 个回答) 关闭
我正在从我的 json 文件中读取 jason 数据,并且我成功打印了 NSarray 类型 arraytsik,现在当我尝试使用 enumerateObjectsUsingBlock 循环遍历 ar
我最近一直在使用 enumerateObjectsUsingBlock: 来满足我的快速枚举需求,但我很难理解 BOOL *stop 在枚举 block 。 NSArray 类引用状态 stop: A
我是一名优秀的程序员,十分优秀!