버튼을 클릭하여 prepareForSegue() - 메소드를 사용하여 segue를 통해 데이터를 전달했습니다. 이제는 두 번째보기에서 레이블이나 그와 비슷한 것으로 인쇄 할 수 있습니다. 문제는 상기 값이 몇 초마다 변경되지만 두 번째보기는 초기 값만 표시한다는 것입니다 (이벤트는 한 번만 발생하기 때문에!). 나는 타이머에 대해 생각했지만 이것이이 문제를 해결하는 데 도움이 될지 잘 모르겠습니다. 누군가가 섹그를 사용하여 이런 종류의 데이터 업데이트를 실현할 가능성을 알고 있습니까? 그렇지 않다면이 문제를 어떻게 해결 하시겠습니까? 기본 접근법에 대한 힌트가 필요합니다. 사전에segue에서 두 번째보기로 전달 된 값을 업데이트 할 수 있습니까?
감사합니다! 당신이 그 값을 포함하는 객체를 생성하고 segued의 ViewController에게 해당 개체에 대한 포인터를 제공하는 경우
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if ([[segue identifier] isEqualToString:@"tab"]){
NSNumber *sliderNumber = [self.dic objectForKey:@"slider"];
NSString *convertSliderNumber = [sliderNumber stringValue];
TabBarViewController *tabBar = [segue destinationViewController];
[tabBar setLabelString:convertSliderNumber];
}
}
오, 좋은 생각. 나는 그것에 대해 생각하지 않았다. 고마워, 나는 그것을 구현하려고합니다. :-) – Keks
나는 약간 혼란 스럽다. 문제를 설명하기 위해 내 질문을 편집했습니다. 이미 포인터를 사용하고 있으므로 변경 방법을 모르겠습니다. 키 "슬라이더"에 속한 사전의 객체는 두 번째보기에서 사용해야하는 값입니다. – Keks
문제는 해당 메서드 내에서 해당 String (convertSliderNumber)을 만들고 있으므로 해당 클래스의 다른 곳에서는 액세스 할 수 없으므로 변경할 수 없기 때문입니다. dict의 슬라이더 키가 변경 될 때마다 클래스의 참조를 변경해야합니다. – Jsdodgers