如何使全局Viewcontroller在后台运行?

时间:2015-09-16 09:36:34

标签: objective-c delegates dropbox global

我正在创建一个使用Core Dropbox SDK的应用程序,并使文档目录中的所有文件和文件夹同步。现在我想让这个东西全局化,所以任何人都可以将它集成到他们的应用程序中,但问题是当我调用全局Viewcontroller的方法时它运行该方法但是没有运行Dropbox委托方法,所以如何才能使它工作。

///This is method that i am calling from another viewcontroller    
-(void)startsync{

   self.restClient = [[DBRestClient alloc] initWithSession:[DBSession sharedSession]];
self.restClient.delegate = self;
[self.restClient loadMetadata:@"/"];
}

但是当我从另一个viewcontroller调用此方法时,这不起作用Dropbox委托方法

/// call this method from another viewcontroller
ListVC *list = [[ListVC alloc]init];
[list startsync];

1 个答案:

答案 0 :(得分:1)

将以下方法放在AppDelegate.h中

-(void)startsync;

现在AppDelegate.m,

-(void)startsync{

  self.restClient = [[DBRestClient alloc] initWithSession:[DBSession sharedSession]];
  self.restClient.delegate = self;
  [self.restClient loadMetadata:@"/"];
 }

现在在yourviewcontroller.m中创建AppDelegate实例

- (void)yourmethod{

AppDelegate *delegate=(AppDelegate *)[[UIApplication sharedApplication]delegate];

[delegate startsync];
}

通话方法

[self yourmethod];