2011-09-21 5 views
0

시작시 코어 데이터에서로드 된 배열의 데이터가있는 세 개의 테이블을로드하는 앱이 있습니다. 사용자는 버튼을 탭하여 저장된 정보를 편집 할 수있는 다른 페이지를 끌어 올 수 있습니다. 작업이 끝나면 변경 사항이 저장되고 핵심 데이터로 다시 커밋되며 사용자는 변경 사항을보기 위해 홈 페이지로 돌아갑니다. 그러나 데이터는 테이블로 다시로드되지 않습니다. 나는 [srcTableView reloadData]를 시도했다. 운이 없다.dismissmodalView에서 돌아온 후 UITableViews를 다시로드하는 방법

작동 방식은 테이블이 viewWillAppear에서 호출 할 때 핵심 데이터에서로드 배열에서 채워지는 것입니다. 올바른 정보가 배열에 저장되지만 배열은 볼 수 있지만 reloadData 메서드가 호출되면 변경되지 않습니다. 그러나 앱을 다시 시작하면 적절한 데이터가 테이블에 있습니다. 제가 인스턴스를 다시로드하는 인스턴스가 표시되는 인스턴스가 아닌 인스턴스 문제 일 것 같아요. 어떻게 든 또는 다른 인스턴스. 나는 어떻게 말할 지 잘 모르겠다.

나는 아무런 영향에 reloadData을 시도했습니다

걸러.

인스턴스화 테이블

-loadView

setTable = [[[MPIViewController alloc] initWithFrame:CGRectMake(kFrameX, 0, 1024, 768) TableData1:Data1 TableData2:Data2 TableData2:Data3]autorelease]; 

열기 두번째보기에서 :

-(IBAction)OpenOptions:(id)sender{ 

// Create the modal view controller 
MPIViewController *viewController = [[MPICreateViewController alloc] initWithNibName:@"MPICreateViewController" bundle:nil]; 

// We are the delegate responsible for dismissing the modal view 
viewController.delegate = self; 

// Create a Navigation controller 
UINavigationController *navController = [[UINavigationController alloc] 
             initWithRootViewController:viewController]; 
    // show the navigation controller modally 
[self presentModalViewController:navController animated:YES]; 

// Clean up resources 
[navController release]; 
[viewController release]; 
} 
- (void)didDismissModalView { 

// Dismiss the modal view controller 
[self dismissModalViewControllerAnimated:YES]; 

} 

나는뿐만 아니라 modalViewControllerDelegate에 대한 프로토콜을 만든 는 여기에 몇 가지 코드입니다. 이 외의 다른 게시물을 게시하는 데 가장 효과적인 코드가 무엇인지 모릅니다.

+0

보기에 어떤 코드도없이 말하기가 쉽지 않습니다. 관련 코드를 넣을 수 있습니까? –

답변

0

당신은`[srcTableView reloadData];를 사용할 수 있습니다. in viewWillAppear 메서드

1

보기 컨트롤러를 덮고있는 모달보기 컨트롤러를 닫을 때보기 컨트롤러에 -viewWillAppear: 메시지가 표시됩니다. 보통 -reloadData에 전화해야합니다. 즉 :

- (void)viewWillAppear:(BOOL)animated 
{ 
    [super viewWillAppear:animated]; 

    [srcTableView reloadData]; 
} 

당신은 srcTableView 실제로 어딘가에 설정되고 있음을하지만, 있는지 확인해야합니다; 그것의 외모에서 당신은 다른보기 컨트롤러 (MPIViewController)를 당신의 -loadView에서 인스턴스화하고 있습니다. 이것은 정통이 아니며 아마도 당신이하고 싶은 것이 아닙니다.

관련 문제