문제

다음 detailView 방법에 대한 또 다른 질문입니다.나에게서 Mail-App 에서처럼.거기에서 배열로 해결하는 방법을 알고 싶었습니다.

이제 coreData를 사용하고 있습니다.예를 들어 5 개의 속성이있는 EntityAlphabet이라는 엔티티가 있습니다.여기서 속성은 중요하지 않습니다. DetailView에서이 엔티티를 반복하고 싶습니다. 어떻게 할 수 있나요?

detailView에서 엔티티를 "전환"하고 싶습니다.

BTW : NSFetchedResultsController로 tableView를 채우고 있습니다.

도움이 되었습니까?

해결책

정확히 동일한 상황에 처해 있으며 managedObjects 배열을 detailView에 전달했습니다. 그런 다음 상세보기에서 누르는 위쪽 / 아래쪽 화살표를 기준으로 배열에서 적절한 개체를 선택합니다. 따라서 제공 한 링크의 솔루션과 유사합니다. 객체 배열을 얻으려면 didSelectRowForIndexPath : 메소드에서 다음과 같은 작업을 수행하십시오. 라코 디스

이 솔루션은 확실히 저 기술이며 2 년 전과 같이 당시 지식이 부족했기 때문에 구현했습니다. 이제 몇 가지 추가 방법을 생각할 수 있습니다.

  1. NSFetchedResultsController에 의해 관리되는 tableView에 대한 블록 콜백을 활용합니다. 따라서 didSelectRowAtIndexPath 메서드를 사용할 때 기본적으로 indexPath를 사용하고 NSFetchedResultsController에서 새 managedObject를 반환하는 블록을 detailViewController에 제공합니다.
  2. tableViewController가 구현하는 프로토콜을 만듭니다. 프로토콜의 다양한 메소드를 통해 새 객체를 요청하고 detailViewController UI를 업데이트 할 수 있습니다. 즉, managedObjects 집합의 첫 번째 또는 마지막 개체인지 여부를 쿼리합니다.

    도움이되기를 바랍니다. 행운을 빕니다

다른 팁

NSFetchedResultsController를 비슷한 방식으로 사용할 수 있습니다.- (id)objectAtIndexPath:(NSIndexPath *)indexPath를 호출 해보십시오.- (IBAction)nextRow:(id) sender에서 이미 사용중인 newIndexPath를 전달합니다.

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