문제

초기보기 컨트롤러에서 두 개의 세그리브가 나옵니다. 푸시 세그리가 셀에 연결되고 모달은 + UIBarButtonItem에 연결됩니다.

여기에 이미지 설명

My PrepareForsegue 코드가 어떻게 생겼는지, 모든 것이 미세하고 FUND SEGUE를 통해 파일이 전송되지만 FILEPATH는 모달 세그 슈를 통과하지 않습니다.

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString:@"showTimes"]) {
        [[segue destinationViewController] setFilePath:filePath];
    }

//    if ([[segue identifier] isEqualToString:@"addEvent"]) {
//        [[segue destinationViewController] setFilePath:filePath];
//    } 
}
.

두 번째 IF 문 및 SEGUE 식별자의 주석 처리를 제거하면 앱이 충돌합니다. FilePath는 어디에도 보관되지 않습니다. 그 줄이 실행되었는지 확인하려는 시도의 모든 명령문에서 [[segue destinationViewController] setFilePath:filePath];를 이동하려고 시도했지만 내 앱이 충돌합니다.

두 세그리브 모두 올바른 식별자가 속성에 설정되어 있습니다. 그러나 Xcode가 Segue 유형을 변경하면 다음 번에 앱을 실행할 때 해당 변경 사항이 반영되지 않아서 올바른 식별자가 설정되었음을 실제로 실제로 실현하는 것이 확실하지 않습니다.

나는 무엇을 해야할지 잃어버린 것입니다. 나는 objective-c를 비교적 새로운 것입니다.

도움이 되었습니까?

해결책

addEvent 세그 큐어가보기 컨트롤러가 아닌 탐색 컨트롤러를 가리 킵니다.대신보기 컨트롤러를 가져 와서 해당 파일 경로를 설정하십시오.

[[[segue destinationViewController] topViewController] setFilePath:filePath];
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top