我在iPhone应用程序中使用NSFetchedResultsController,我想知道是否有一些简单的方法来获取所有部分返回的总行数.
而不是获取[[fetchedResultsController sections] count]然后循环遍历每个部分以获得它的计数,它可以在一行中完成吗?
谢谢!
我有以下NSFetchedResultsController扩展:
extension NSFetchedResultsController
{
func tryObjectAtIndex(_ indexPath: IndexPath) throws -> AnyObject // ERROR HERE
{
do
{
try ObjC.catchException
{
return self.object(at: indexPath) // CAUSE
}
}
catch
{
print("An error ocurred: \(error)")
}
}
}
Run Code Online (Sandbox Code Playgroud)
其中ObjC是一个 Objective-C 类(来自此处)。这是.h:
#import <Foundation/Foundation.h>
@interface ObjC : NSObject
+ (BOOL)catchException:(void(^)())tryBlock error:(__autoreleasing NSError **)error;
@end
Run Code Online (Sandbox Code Playgroud)
还有.m:
@implementation ObjC
+ (BOOL)catchException:(void(^)())tryBlock error:(__autoreleasing NSError **)error
{
@try
{
tryBlock();
return YES;
}
@catch (NSException *exception)
{ …Run Code Online (Sandbox Code Playgroud)