2012-04-26 6 views
0

두 개의 ViewController가 있습니다. 첫 번째는 값이있는 배열을 포함하고 표시합니다. 두 번째는 배열에 추가 할 열을 선택할 수있는 선택기보기 (모달보기 컨트롤러)입니다 ("ADD"단추 사용). 그러나 IBaction 함수와 배열이 같은 컨트롤러에 없기 때문에 사용자가 "ADD"버튼을 클릭하여 내 배열을 새로 고침 할 때 이벤트를 검색하는 방법을 모르겠습니다.다른보기 컨트롤러에서 이벤트 가져 오기

도움 주셔서 감사합니다.

답변

0

프로토콜은 이러한 상황에 유용 할 수 있습니다.

프로토콜은 단순히 클래스 정의에 연결되지 않은 메소드 선언의 목록입니다.

프로토콜은 여러 가지 시나리오에서 유용 할 수 있지만 일반적으로 다른 클래스에서 구현할 메서드를 정의하는 것이 좋습니다. 친숙한 예제는 테이블 뷰를 사용할 때 클래스가 셀 내용을 테이블에 삽입하도록 요청하는 cellForRowAtIndexPath 메소드를 구현하는 것입니다. cellForRowAtIndexPath 메소드는 UITableViewDataSource 프로토콜 내에 정의됩니다.

Simple objective-c protocol example

0

당신은 당신의 추가 버튼을 누르면 당신은 또한 하나 개의 로컬 변수를 전달할 수 있으며, 그 후 당신은 테이블보기에서 배열을 다시로드합니다.

나는 당신이 simulaor에서 필드 추가 기능을 추가하는 것과 같은 것을 원한다고 생각한다.

환영합니다.

이 같은 매개 변수로 배열 secondviewcontroller의 방법을 만들기 :

+0

마지막으로 NSNotification을 사용하여 결과가 매우 좋습니다. – Grossiste

+0

빠른 답변을 보내 주셔서 감사합니다. – Grossiste

0

나는, 당신은 당신이 버튼 이벤트 (IBAction를)에서 두 번째 뷰 컨트롤러에 액세스하려는 첫 번째보기 컨트롤러의 배열을 가지고 있음을 고려한다.

-(void)methodname:(nsmutablearray *)array; 

첫 번째보기 컨트롤러에서 위의 메서드를 호출하고 두 번째보기 컨트롤러로 초기화 할 때이 메서드로 배열을 전달합니다.

그래서 두 번째보기 컨트롤러에서 더 이상 사용할 수있는 채워진 배열을 얻을 수 있습니다.

관련 문제