一段时间后更新UIView?

时间:2013-05-28 12:02:11

标签: iphone ios ipad uikit

我想创建自定义视图,在一段时间后调用webservice并自行更新。即使应用程序未处于活动状态,数据也应该更新..那么这样做的最佳方法是什么?

3 个答案:

答案 0 :(得分:1)

使用NSTimer,但应用程序处于后台模式时数据不会更新。应用程序激活后,NSTimer将继续有效。

答案 1 :(得分:0)

您可以使用NSTimer。在自定义方法中添加代码并调用该方法,如下所示..

    NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:3.0f target:self selector:@selector(yourMethodName:) userInfo:nil repeats:YES];

scheduledTimerWithTimeInterval参数中,您可以设置以秒为单位的时间,以便每隔3秒钟调用传入selector参数的方法。

查看NSTimer的一个示例和教程,从此链接nstimer-tutorial-creating-clockstopwatchtimer-iphoneipad

<强>更新

如果您想调用webservice,那么您可以使用NSThread,如下所示...

- (void) runTimer 
{
    [NSThread detachNewThreadSelector:@selector(updateAllVisibleElements)toTarget:self withObject:nil]; 
}

- (void) updateAllVisibleElements  {

    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
    if(service == nil)
    {
        service = [[WebService alloc] init];
    }
    [service getlocationID:currentLatitude andlongitude:currentLongitute];
    [pool release];
}

请参阅链接Here

答案 2 :(得分:0)

您可以跟踪该位置,但当应用在后台时,您将无法连接到您的网络服务。