在主執行緒里加入一個loading畫面……

  2 {
  3     [window addSubview:view_loading];
  4     [NSThread detachNewThreadSelector:@selector(init_backup:) toTarget:self withObject:nil];
  5 }

可以通過performSelectorOhMainThread更新UI元素,比如設置進度條等等。最後消除loading畫面,載入主View。

  7 - (void)init_backup:(id)sender
  8 {
  9     NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
10 
11     //  ...
12     int i = status;
13     [self performSelectorOnMainThread:@selector(show_loading:) withObject:[NSNumber numberWithInt:i] waitUntil    Done:NO];
14 
15     [view_loading removeFromSuperview];
16     [window addSubview:tabcontroller_main.view];
17     [pool release];
18 }

 

 

 

 

 

語法

 

 

{ 
[ window addSubview : view_loading] ;
[ NSThread detachNewThreadSelector : @selector ( init_backup: ) toTarget : selfwithObject : nil ] ;
} 
 
- ( void ) init_backup: ( id ) sender 
{ 
NSAutoreleasePool * pool = [ [ NSAutoreleasePool alloc ] init ] ;
 
// ... 
int i = status ;
[ self performSelectorOnMainThread : @selector ( show_loading: ) withObject : [NSNumber numberWithInt : i] waitUntilDone : NO ] ;
 
[ view_loading removeFromSuperview ] ;
[ window addSubview : tabcontroller_main.view ] ;
[ pool release ] ;
} 
arrow
arrow
    全站熱搜

    戮克 發表在 痞客邦 留言(0) 人氣()