2010-05-10 2 views
2

UITableView에서 사용할 사용자 지정 대리자 클래스 설정과 관련하여 질문이 있습니다. 다음과 같이 내가 무슨 짓을하는 것입니다 :UITableView는 프로그래밍 방식으로 대리인 개체를 만드시겠습니까?

  • 설정
  • 추가가 필요한 <UITableViewDelegate, UITableViewDataSource> 프로토콜이 새로운 클래스를 일치 된 (클래스의 .H 및 *하는 .m 파일이 * sperate에서) 새로운 클래스 행동 양식.
  • @property 및 IBOutlet을 사용하여 새 개체에 대한 포인터를 만들었습니다.
  • InterfaceBuilder에서 새 클래스에 객체 템플릿을 만들고 할당했습니다.
  • dataSource 및 대리인 연결이 지정되었습니다.

이 모두 정상적으로 작동합니다. 제 질문은 interfaceBuilder를 사용하여 새 델리게이트 클래스를 설정하고 인스턴스화하지 않고 대신 Xcode에서이 작업을 수행하는 방법에 대해 설명합니다. 좀 더 구체적으로 내가 어떻게합니까 :

  • 컨트롤러에 의해 생성되거나 소유되는 위임 클래스를 인스턴스화 하시겠습니까?
  • 데이터 소스를 설정하고 연결을 위임 하시겠습니까?
  • 이 작업을 수행하는 가장 좋은 방법은 무엇입니까?

모든 도움말/정보를 제공해 주시면 대단히 감사하겠습니다.

게리

보기 컨트롤러에서

답변

3

은 대리자 클래스의 새 인스턴스를 만들고 속성에 할당, IBOutlet

MyDelegateClass * delegateClass = [[MyDelegateClass alloc] init]; 
[self setMyProperty:delegateClass]; 
[delegateClass release]; 

당신은 당신의 tableview의 위임 및 데이터 소스를 설정 설정할 수 있습니다 제거해야합니다 수행하여 :

[myTableView setDelegate:self.myProperty]; 
[myTableView setDatasource:self.myProperty]; 

당신은 아마 viewDidLoad

에서이 모든 것을 놓아야합니다
+0

톰이 더 빠르다 & 맞습니다 :) – stigi

관련 문제