사용자가 설정 VC에 들어가서 설정을 수정 한 후에 설정보기 컨트롤러에 대해 Segue 및 해당 설정을 가지고 있습니다. 어떻게 이러한 설정을 얻을 수 있습니까? 메인 뷰 컨트롤러. '다른 방법'이 가능합니까? 당신은 위임 프로토콜을 사용해야합니다설정 View Controller from Main View 컨트롤러 정보 전송
0
A
답변
0
,이 대답은 질문
0
당신은 실내의 SEGUE을 사용할 수 있습니다에 적합합니다. unwind segue에 대해 배우려면 다음 자습서를 확인하십시오.
http://chrisrisner.com/Unwinding-with-iOS-and-Storyboards
What are Unwind segues for and how do you use them?
또한 다른 뷰 컨트롤러에서 데이터를 전송하는 NSNotificationcenter을 사용할 수 있습니다
.설정의 경우 NSUserdefaults가 기본 설정입니다.
0
여기에 몇 가지 옵션이 있습니다. 기본적으로 설정보기 컨트롤러에서 기본보기 컨트롤러로 데이터를 전달하는 전략이 필요합니다. 나는 실행 된 segue로부터 독립적으로 그것을하는 것을 선호 할 것이다. 수 있습니다 :
- NSUserDefaults를 사용하여 이미 선택한 설정을 유지합니다. Class Reference.
- 위임 기법을 사용하여 앱의 다른 개체에 결과를 전달하십시오.
- 알림을 사용하면 이벤트/변경 사항을 앱의 객체 세트로 전파 할 수 있습니다.
- 사용자 기본값에 저장하기에는 너무 복잡하면 변경 사항을 유지하려면 고유 한 모델을 사용하십시오.
0
블록을 사용해 볼 수도 있습니다. 지금처럼 settingsViewController에 속성을 넣어 : 다음
@property (nonatomic, strong) void(^completionBlock)(NSDictionary *dataYouWantPassedBack);
당신의 MainViewController에, -prepareForSegue 당신이
설정에서-(void)prepareForSegue:(UIStoryboardSegue*)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"mySegueName"])
{
SettingsViewController *dest = [segue destinationViewController];
dest.completionBlock = ^(NSDictionary *dataYouWantPassedBack){
//do anything you want with the data in the dictionary here
};
}
}
이 컨트롤러를 볼 당신의 settingsViewController을 기각 할 때 데이터에 일이 원하는 설정에 전달 된 사전에 데이터를 넣은 다음 완료 블록을 호출하고 사전을 전달하여보기 컨트롤러를 닫을 수 있습니다.
NSDictionary *example = [NSDictionary dictionaryWithObjectsAndKeys: obj, key, nil];
if (self.completionBlock)
self.completionBlock(example);
관련 문제
- 1. View Controller from AppDelgate
- 2. MVC Controller from view of UpdateModel
- 3. Rails 4.1에서 create controller from new view
- 4. App Delegate Xcode 5에서 View Controller 설정
- 5. JavaScript의 Model-View-Controller
- 6. View Controller resize
- 7. View Controller 리소스 처분
- 8. View Controller lifecycle
- 9. View Controller 유지
- 10. View MVC에서 Controller 변수에 액세스
- 11. IEnumerable MVC Controller to View
- 12. 데이터 전달 View-to-Controller
- 13. View Controller 간을 효율적으로 전환
- 14. ui-view 외부 컨트롤러
- 15. Render View from AppExceptionHandler
- 16. App Delegate에서 다른 View Controller IBOutlet에 액세스하기
- 17. Angular ng-view controller error
- 18. View Controller 문제가 Xcode에서 발생했습니다.
- 19. Model-View-Controller for GWT
- 20. Storyboard의 새로운 View Controller 클래스
- 21. View Controller 대신 ViewController.h 파일
- 22. View Controller not full screen
- 23. MVC Controller to View 전달
- 24. Model-View-Controller 패턴 구현
- 25. View Controller iOS6의 오리엔테이션 문제
- 26. 응용 프로그램에서 Master View Controller (First View Controller)의 메모리를 해제하는 방법은 무엇입니까?
- 27. iOS - 다른 View Controller를 닫은 직후 View Controller
- 28. Table View Controller 옵션을 통해 View Controller의 텍스트를 변경합니까?
- 29. 하나의 View Controller 만 오리엔테이션 설정에 응답합니다.
- 30. iOS Tab Bar Controller 용 패턴 : 기능을 공유하는 View Controller
특히이 경우 (설정) 특히 컨트롤러간에 전달하는 대신 데이터를 NSUserDefaults에 유지하는 것이 더 적절할 수 있습니다. – Alladinian