不需要刷新!你可以使用线程来完成它。Main_thread用于更新UI时间,让附加代码到另一个队列(并发或串行化取决于你的目的。With method using block(如果你不知道,去发现它,它可以在Ray Wenderlich上找到)。块是一种回调机制。就像这样:
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
[self getNewConversation:^(NSArray *conversations, NSError *error){
dispatch_async(dispatch_get_main_queue(), ^{//you got back with main_thread
if(error){
NSLog(@"Error with description: %@", error.description);
}else{
//update your view with new content right here
}
});
}];
});
4条答案
按热度按时间olhwl3o21#
用一个(两个)字-推送通知。您将不得不实现推送通知并处理所有可能的情况,但您可能会发现有趣的一个特殊情况是在应用程序处于活动状态时推送通知。
这里有一些东西供你研究(如果你不熟悉PN):
How to setup push notifications in Swift
http://www.raywenderlich.com/32960/apple-push-notification-services-in-ios-6-tutorial-part-1
b4qexyjb2#
不需要刷新!你可以使用线程来完成它。Main_thread用于更新UI时间,让附加代码到另一个队列(并发或串行化取决于你的目的。With method using block(如果你不知道,去发现它,它可以在Ray Wenderlich上找到)。块是一种回调机制。就像这样:
以上是机制如何更新您的屏幕时,消息到达.通过应用这个方法,您可以使用多线程来更新UI并操作Parse中的数据。关于远程通知,您可以参考@Nick提供的链接。当设备锁定或睡眠时应使用通知,使用活动应用程序,它应使用块来回调UI并更新它。说得好,应用多线程有助于提高应用程序的性能。但要小心!它不适合初学者,缺乏管理线程的经验可能会导致运行时错误,需要花费大量精力来检查和修复。
igetnqfo3#
你可以只设置计时器,它会自动调用你设置的时间。
这将每2秒自动调用一次。
a11xaf1n4#
你可以使用setNeedsDisplay在视图“脏”的时候重画视图。意思是当收到信息时显示聊天和更新视图。