테이블 뷰가있는 뷰 컨트롤러에서 상세 뷰에 내용을로드하는 것이 더 효율적입니까?테이블 뷰가있는 뷰 컨트롤러에서 상세 뷰에 내용을로드하는 것이 더 효율적입니까?
변수를 didSelectRowAtIndexPath:
메소드의 상세보기로 전달해야합니까? 아니면 서버로 JSON 호출을하고 상세보기의 사전에 데이터를로드하는 것이 더 좋습니까? 나는 didSelectRowAtIndexPath:
방법을 통해 도움
테이블 뷰가있는 뷰 컨트롤러에서 상세 뷰에 내용을로드하는 것이 더 효율적입니까?테이블 뷰가있는 뷰 컨트롤러에서 상세 뷰에 내용을로드하는 것이 더 효율적입니까?
변수를 didSelectRowAtIndexPath:
메소드의 상세보기로 전달해야합니까? 아니면 서버로 JSON 호출을하고 상세보기의 사전에 데이터를로드하는 것이 더 좋습니까? 나는 didSelectRowAtIndexPath:
방법을 통해 도움
이미 테이블 뷰 컨트롤러에서 전체 데이터가있는 경우 너무 많은 변수를 전달하는 대신 개체를 전달할 수 있습니다. 단순히 도메인 클래스를 만들고, 변수와 객체를 선언하고, 속성을 설정하고 합성하십시오. 이제이 도메인 클래스 객체를 컨트롤러에 전달하십시오. 그러나 테이블 뷰에 데이터가 있고 더 자세한 정보를 가져 오기 위해 서버 호출을해야하는 경우에는 ID 만 전달하고 상세 뷰에서만 서버 호출을 할 수 있습니다.
에 대한
감사를 상세 뷰에 뷰 컨트롤러에서 데이터를 그것은 데이터에서 오는 귀하의 질문에 전혀 분명하지 않다 통과 할 때
이 좀 지연 통지 . 테이블 뷰에서 항목을 선택하면 상세 뷰를 표시하기 전에 해당 항목에 대한 추가 정보를 가져 오기 위해 웹 서비스 호출을해야한다는 JSON 호출을 언급했기 때문에 가정합니다.
그런 경우 세부 정보보기 컨트롤러에서 웹 서비스 호출을하고 데이터를로드해야합니다. Apple의 인터페이스 가이드 라인은 응답 성을 나타 내기 위해이 방법을 권장합니다. 상세 뷰 컨트롤러는 테이블 뷰의 행을 탭한 직후에 표시됩니다. 세부 정보보기에서 활동 표시기 또는 로딩 그래픽을 사용하여 추가 정보가 다운로드 중임을 사용자에게 알릴 수 있습니다.
이것은 데이터 다운로드를 기다리는 것보다 훨씬 좋은 경험이며 다음에 만보기 전환을 실행합니다.
그래서 레코드 ID를 자세히보기로 전달한 다음 모든 데이터에 대해 웹 서비스를 호출해야합니다. 지금은 테이블 뷰의 데이터를 didSelectRow 메소드의 상세 뷰로 전달합니다. detailViewController.titleStr = [[publicDataArray objectAtIndex : indexPath.row] objectForKey : @ "title"]; – user2588945
예, 레코드 ID를 상세보기 컨트롤러에 전달하고 상세보기 컨트롤러가 서비스에서 추가 정보를 가져 오도록 처리하도록합니다. – lxt
사용 didSelectRowAtIndexPath:
방법은 ID 또는 detailedViewController
에 고유 변수를 보낼 ... 그리고 detailedViewController
에 viewDidLoad:
에서 JSON 데이터를 얻기 위해이 유일한 변수 또는 ID를 사용하거나 viewWillAppear:
이 용이하고 detailedViewController
DetailView = [[DetailViewController]alloc]init];
DetailView.strValue = sValue.
[self.navigationController pushViewController:DetailView animated:Yes];
DetailView는 사용자 세부 뷰의 개체입니다. 이 클래스를 가져 와서 위와 같은 인스턴스를 만들고 strValue는 자세히보기에서 가져온 문자열이고 sValue는 현재보기의 문자열입니다. 컨트롤러에서 다른 값으로 전달되는 값이 있습니다.
이것을 확인하십시오. link도 있습니다.
감사합니다! 그게 내가 지금하고있는 일이야. 따라서 하나의 VC에서 다른 VC로 데이터를 전달하고 상세 뷰에서 다시 다운로드하여 구문 분석 할 필요는 없습니다. – user2588945
모든 뷰 컨트롤러에 모든 데이터를로드하고 상세 뷰 컨트롤러에서 선택한 인덱스 데이터를 전달합니다. –