2011-04-13 3 views
0

3 개의받은 편지함, 연락처 및 설정이있는 응용 프로그램이 있습니다.응용 프로그램이 foreground로 들어갈 때 iphone refresh viewcontroller가 작동하지 않습니다.

받은 편지함에는 다른 사용자의 메시지 목록이 있습니다. 나는 reloadTableViewDataSource 기능을 사용하여 메시지를 업데이트합니다. 이제 응용 프로그램이 포 그라운드로 들어갈 때 메시지를 다시로드하거나 새로 고침해야합니다.

이렇게하려면 appdelegate에서 다음 코드를 입력해야합니다.

- (void)applicationWillEnterForeground:(UIApplication *)application { 
    application.applicationIconBadgeNumber=0; 
    Inbox *inbox=[[Inbox alloc]init]; 
    inbox.userid=self.usermail; 
    inbox.password=self.password; 
    inbox.loggedInUserId=self.loggedinUserId; 
    [inbox reloadTableViewDataSource]; 

} 

업데이트 방법은이 작업을 수행하는 올바른 방법은 무엇입니까, 새로운 메시지가 갱신되지 않는 오심, 내가 실제로받은 편지함의 ViewController에서 어떤 일이 일어나고 업데이트 할 수 있지만 아무것도에 대한 nslog 메시지를보고하고로 호출 할 것 같다?

+1

무엇 reloadTableViewDataSource에 대한 코드 모습입니까? – Twelve47

+0

관련이 없지만 'Inbox' 인스턴스를 해제하는 것을 잊지 마십시오. –

+0

너무 오래 그것은 여기에 붙여 넣을 수 있습니다. 그것은 최신 messges를 얻으려면 webservice가 포함되어 있습니다. 그리고 그것은 tableview를 reloads합니다. 의문의 여지가 만약 내가받은 편지함 viewcontroller의 새 인스턴스를 만들고 그것에서 업데이 트 기능을 호출하는 것입니다 원래 viewcontroller 인스턴스를 새로 고칩니다? – sujith1406

답변

2

새받은 편지함 개체를 만들고 콘텐츠를 새로 고치는 것 같습니다. 하지만 실제로 원하는 것은 현재 표시된받은 편지함 개체의 데이터를 새로 고치는 것입니다.

당신이해야 할 일은 ViewController에서 사용되는 Inbox 개체에 대한 참조입니다. 그리고 해당 참조에서 reloadTableViewDataSource를 호출하십시오.

희망 그게 문제 ...

+0

감사합니다 남자 u는 나의 일을 구했다 !! – sujith1406

+0

@ sujith1406 당신은 매우 환영합니다 ... – schmidiii