1

이 문제에 대한 이해가 부족하여 도움이 필요합니다.NSFetchedResultsController 및 CoreData를 사용하여 다른 테이블보기 컨트롤러에 선택된 행 전달

나는 더하기 단추가있는 테이블보기가 있습니다. 사용자는 모달 뷰를 표시 한 다음 텍스트 필드에 텍스트를 삽입합니다. 저장을 클릭하면 핵심 데이터베이스에 추가되고 테이블보기에 저장됩니다.

전혀 문제가되지 않습니다.

내가 달성하고 싶은 것은 사용자가 셀을 클릭 할 수있게하고 클릭 한 셀에 대한 자세한 정보를 표시하는 특정 항목을 고려하여 새 테이블보기를 밀어 넣을 수 있도록 허용하는 것입니다. 이것으로 새로운 뷰 컨트롤러의 타이틀을 선택된 행의 정보 등으로 설정하고 싶습니다.

컨셉을 이해하고 있으며 이것이 달성하기 어려울 것이라고 생각합니다. 내 첫 번째 응용 프로그램, 나는 몇 가지 기본 개념을 간과하고있어 나는이 개념 주위에 내 머리를 열심히 찾는거야.

첫 번째 질문은 : didSelectRowAtIndexPath 또는 prepareForSegue를 구현합니까?

NSManagedObjectContext는 App Delegate에서 사용 중이며, View Controller의 제목을 변경하는 동안 Core Data에서 정보를 표시 할 수 있도록 선택한 셀의 정보를 전달하려고합니다.

여러 질문과 자원을 읽음으로써 나는 이것을 달성하는 방법을 이해하는 것에 더 가까이 접근하지 못합니다.

전달 된 값을 유지하려면 새보기 컨트롤러에서 속성을 만들어야합니까?

나는 이걸 잃었으니 도움을 주시면 감사하겠습니다!

답변

0

사용자가 셀을 선택할 때 didSelectRowAtIndexPath 메서드가 호출됩니다. 이렇게하면 앱에서 사용자가 선택중인 셀을 알 수 있으며 사용자가 셀을 선택한 후 해당 셀의 정보로 작업 할 수 있습니다.

prepareForSegue이 prepareForSegue에

[self performSegueWithIdentifier:@"YourIdentifier" sender:self]. 

을 사용하여 다른보기 컨트롤러로 이동하면 앱에 말할 때 호출되는 방법, 당신은 대상보기 컨트롤러를 설정하고 해당 응용 프로그램 전에 통과 싶어 정보있는 것이다 보기를 변경하십시오. 첫 번째 View Controller에서 액세스하려면 대상 View Controller에 속성 (NSString, NSArray 등)을 만들어야한다는 사실을 아는 것이 중요합니다.

질문을 이해하면 사용자가 행 (didSelectRowAtIndexPath)을 선택한 다음 두 번째보기 컨트롤러에 표시 할 정보를 설정할 때 [self performSegueWithIdentifier : @ "YourIdentifier"sender : self]를 호출 할 수 있습니다.

샘플 코드가 필요한 경우 알려주십시오. 행운을 빕니다!

+0

대단히 감사합니다! 매우 도움이됩니다! 나는 아직도 약간 혼란 스럽다. 그러나 그것이 올바른 방향으로 나를 가리키고있다. 내 앱에서 어떤 메소드를 사용할지 확실하지 않습니다. 선택한 셀을 다음보기로 전달하면됩니다. 항상 셀을 전달하면 동일한 뷰 컨트롤러가됩니다. 가져 오기 요청과 술어를 사용하여 표시 할 수 있습니다. 핵심 데이터에서 그 셀에 대한 정보 .. 어떤 샘플 코드는 여전히 조금 잃어 버렸기 때문에 대단히 도움이 될 것입니다!감사합니다 – amitsbajaj

+0

어떤 종류의 물건을 통과해야합니까? NSArray, NSString, NSDictionary? 그냥 몇 가지 샘플 코드를 작성하는 부탁 해요 :) – scollaco