在我的应用程序中,我有很多,大约 70000 条记录要加载到表格视图中。加载需要很长时间,比如十分钟。由于它阻塞了主 UIthread,我无法返回或访问任何按钮。是否有任何替代方法,例如为此目的使用单独的线程或任何替代方法?请告诉我一些方法。
谢谢,维诺德。
在我的应用程序中,我有很多,大约 70000 条记录要加载到表格视图中。加载需要很长时间,比如十分钟。由于它阻塞了主 UIthread,我无法返回或访问任何按钮。是否有任何替代方法,例如为此目的使用单独的线程或任何替代方法?请告诉我一些方法。
谢谢,维诺德。
使用NSThread。
您的代码将类似于以下内容:
NSThread *thread = [NSThread initWithTarget:self selector:@selector(loadData:) object:nil];
[thread start];
[thread release];
-(void) loadData:(id) obj {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
// load data
[pool release];
}
如果您需要从新创建的线程对主 UI 线程执行任何操作,请使用performSelectorOnMainThread:withObject
当前对象上的方法。