2011-10-27 7 views
0

내가 그것을 채우는 배열에 새 개체를 만든 후 다시로드하려면 rootViewController 내 tableView 얻으려고합니다.다시로드 tableView 데이터를 rootViewController

은 내가 rootVIewController 내있는 viewDidLoad에서 다음을 사용하려면 :

[tableView reloadDate];

을하지만 오류 얻을 :

Use of undeclared identifier "tableView"

나는 내가 선언하지 않았기 때문에 그 생각을 viewDidLoad 메서드가 끝날 때까지 object tableView. 그렇다면 테이블을 새로 고치려면 어떤 다른 옵션이 필요합니까?

감사

다시로드를 말할 수있는 것보다 당신의있는 tableView를 선언하지 않은 경우
+0

이 경우 tableView는 ivar입니다. 나는 당신이 'tableView' 속성을 가지고 있다고 가정합니다. '[self.tableView reloadData];라고 쓰십시오. – beryllium

답변

0

. 응용 프로그램의 아키텍처를 둘러싼 질문이 있습니다. 'rootViewCOntroller'라고 할 때 RVC 응용 프로그램을 말하는 것입니까? 그렇다면, 프로그래밍 방식으로 tableView를 인스턴스화하거나 .xib/outlet에서 액세스합니까?

XIB에 액세스하는 경우 속성 콘센트 [[self tableView] reloadData]를 호출해야합니다.

프로그래밍 방식으로 테이블 뷰를 만드는 경우 재 작성을 호출하기 전에 테이블 뷰를 만들어야합니다. 대부분의 경우 해당 tableView를 가리키는 RVC 클래스의 속성을 정의해야합니다. 코드에서했던 것처럼 직접 [[self tableView] reloadData]를 호출하는 것이 좋습니다.

+0

이상한 용어에 대해 유감스럽게 생각합니다 (obj-c를 처음 사용). 제가 언급 한 RVC 앱입니다. 프로그래밍 방식으로 tableView 인스턴스입니다. – novicePrgrmr

+0

그래야 나중에 테이블 뷰를 인스턴스화하는 것처럼 들리네. 단순히 코드에서 이전에 테이블을 작성하지 않는 동기가 있습니까? 또한 배열에 새 객체를 추가하는 것이 RVC viewDidLoad에 어떻게 영향을 미치는지 명확하지 않습니다. 화면에 테이블이 있다고 가정하면 새 모델 객체가 배열에 추가되면 tableView에 다시로드하라는 메시지를 표시해야합니다 그 시간에 (또는 [tableView insertRowsAtIndexPaths]를 사용하십시오.) 다시 아키텍처에 대해 볼 수는 없지만, 배열에 무언가가 추가 될 때마다 viewDidLoad는 오래 전에 사라졌습니다. – isaac

+0

내 문제는 그 개체가 다른 클래스의 배열에 추가되어 하나의 클래스에서 다른 클래스의 reloadData를 모르는 경우 – novicePrgrmr

관련 문제