2011-08-08 4 views
0

호출해야합니다 :누구든지 다른보기 컨트롤러에서 변수에 액세스하는 방법을 알고 있습니까?

 @property (nonatomic, retain) IBOutletCollection(UIButton) NSArray *buttons; 

viewcontroller x에서 액세스 할 수 있고 뷰 컨트롤러 y에서 단추 색상을 설정할 수 있습니다. 기본적으로 나는 다른 색 구성표를 허용하는 설정 페이지를 만들고 있습니다. 어떤 아이디어? 감사!

+0

사용 특성은 여기 나쁜 생각처럼 보일 대표단에 위로 읽어야한다. 대신 다른보기 컨트롤러가 호출 할 수있는 메소드를 구현하십시오 (해당 컨트롤러의 위임 메소드로 만드는 것이 좋습니다).이 메소드는 색상이나 테마 또는 다른 것과 같은 매개 변수를 허용하고 해당 메소드의 모든 사용자 정의를 기반으로합니다. 당신이 얻는 매개 변수. –

+0

더 설명해 주시겠습니까? 나는 이것에 처음이에요. 감사! – rreichel

답변

0

당신은 위임을 사용할 수 있습니다.

기본적으로 viewcontroller y는 viewcontroller x의 위임자이며 누군가가 설정 페이지를 변경할 때마다 viewcontroller x는 viewcontroller y에 해당 변경을 알립니다. X는과 같이 Y 통지 것 :

[delegate doSomething withParameter: parameter] 

의 ViewController의 y를 누른 후 해당 매개 변수 (당신이 전달하려는 변수)와 특정 방법을 수행 할 것입니다.

관련된 다른 몇 가지가있다, 그래서 당신은 모든 사용자가 사용자 정의 할보기 위해 당신은 하나 개의 속성으로 끝낼 것,

0

당신은 뷰 컨트롤러 Y를 인스턴스화 할 때보기 컨트롤러 X에 대한 참조를 전달해야

ViewControllerY *viewController = [[[ViewControllerY alloc] initWithNibName:@"ViewControllerY" bundle:nil] autorelease]; 
viewController.viewControllerX = myRefToViewControllerX; //declare a property on your ViewControllerY 
//show view controller Y 
관련 문제