문제

컬렉션보기가 있습니다.사용자가 컬렉션보기를 스 와이프하고 웹 서비스 응답에서 전체 컬렉션 테이블을 다시로드 할 때 웹 서비스를 호출해야합니다.이것이 가능하고 좋은 접근 방식입니다.그리고 그렇다면 이것을 구현하는 방법을 말해 줄 수 있습니다.

도움이 되었습니까?

해결책

이이 가능합니다

예, 확실히 가능합니다.

좋은 접근법

아마도 그렇지 않을 것입니다. 네트워크 요청은 높은 대기 시간을 가질 수 있으므로 사용자가 새 데이터를 볼 때 스 와이프와 순간 사이의 지연으로 끝날 수 있음을 의미합니다. 사용자가 스 와이프 전에 새 데이터를로드 한 경우 더 나은 사용자 환경을 가질 수 있으므로 지연없이 준비가되어있을 준비가되었습니다.

이를 구현하는 방법

컬렉션 뷰 . 하나의 작은 대답으로 여기에 알아야 할 모든 것을 설명하는 것은 실현 가능하지 않습니다. Apple은 이미 전체 가이드를 작성했습니다.

스 와이프가 컬렉션 뷰가 스크롤되는 방향과 동일한 방향으로 표시되는지 여부에 관계없이 질문에서 분명하지 않습니다. 두 가지 경우를 고려해 봅시다 :

스크롤과 동일한 방향으로 스 와이프하기 : 컬렉션 스크롤 - 콜렉션 스크롤 뷰를 만들 수 있습니다. 컬렉션보기의 데이터 소스로드가 합리적인 것처럼 많은 데이터로되어 있어야합니다. 콜렉션이 데이터를 사용할 수없는 셀을 요청할 때 (또는 콜렉션 뷰가 데이터를 사용할 수없는 셀을 필요로하는 셀을 필요로하는 )을 요청하면 데이터 소스가 웹에서 더 많은 데이터를 요청해야합니다. 서비스.

스크롤 방향으로 직각으로 스 와이프합니다. 예를 들어, 컬렉션보기가 가로로 스크롤되고 스 와이프가 수직입니다. 사용자가 제스처로 다른 데이터 집합을 스 와이프 할 수있게하려면 이와 같은 설정을 사용하십시오. 제스처 인식기를 사용하여 스 와이프를 감지하고 제스처의 조치를 사용하여 데이터 소스에 데이터 세트를 전환 할 수 있습니다. 그런 다음 컬렉션에 세포를 다시로드하도록 알려주십시오. -[UICollectionView reloadData] 메서드를 여기에서 사용할 수 있지만 Scroll 위치를 -[UICollectionView scrollToItemAtIndexPath:atScrollPosition:animated:]로 변경할 수도 있습니다.

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