나는 segues를 이해하는 데 어려움을 겪고 있으며, 어떻게 동작하고 객체를 전달 하는가. 기본적으로 저는 계산기가 있고 배열에 저장된 객체를 그래프로 표시하려고합니다. 지금까지 나는 CalculatorBrain의 인스턴스 인 brain이라는 객체를 가지고 있습니다. 이제 두뇌 변수를 저장하는 스택으로 사용 NSArray 속성이 있습니다. 배열에 3과 5 값을 더하고 segue를 원한다고 가정 해 봅시다. 나는 "Graph"버튼을 선택했을 때 버튼을 클릭 할 때 segue를 선택한다. 내가 바라는 새로운 뷰 컨트롤러에 어떻게 두뇌를 전달할 것인가? 전달 된 객체를 받아 들여야하는 새 뷰 컨트롤러에 정의 된 setGraphingPoint라는 속성이 있습니다. 또한, 만약 내가 두뇌를 통과하면 세그 가치 3과 5가 함께 전달 될 것인가 아니면 CalculatorBrain의 새로운 객체를 생성 할 것인가? 여기까지 내가 지금까지 가지고있는 것이있다.Segue를 사용하여 객체 전달하기
이것은 버튼을
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if([segue.identifier isEqualToString:@"Graph"])
[segue.destinationViewController setGraphingPoint:[self.brain program]];
뭐가 잘못이야? 작동하지 않는 것에 대해 더 구체적으로 설명 할 수 있습니까? – Nosrettap
필자는 단지 전달하고 오브젝트를 처리하는 방법을 정확히 이해하지 못했고 정확하게 전달되는 것은 무엇입니까 –
이 예제에서는 포인터를 오브젝트'property'에 전달하고 있습니다. 이는 전달 된 원본 객체에 대한 참조이며 사본이 아니라는 것을 의미합니다. 개를 가리 키기 위해 손가락을 사용하고 있었다고 상상해보십시오. 갑자기 너는 내 옆에 걸어 다닌다. 손가락을 사용하여 개를 가리 키도록 말할 수 있습니다. 우리는 둘 다 똑같은 객체를 참조하고 있습니다. (그러나 개가 실제로 움직이지 않는다는 것에 유의하십시오.) – Nosrettap