나는 내 탭바 컨트롤러에 3 개의 탭이 있으며, 나는 틴더가 손가락 터치를 사용하여 탭을 전환하는 것처럼이 탭 사이를 전환하려고합니다. 나는 UISwipeGestureRecognizer
을 사용했지만, Tinder (데이트 앱)와 완전히 똑같지는 않습니다. Tabbar controller
중 하나에 UISwipeGestureRecognizer
을 추가 한 다음 선택한 인덱스를 변경하는 기능을 추가했습니다. 그러나 애니메이션은 손가락 터치로 제어되지 않습니다. 나는 손가락으로 만지작 거려야한다.손가락 스 와이프를 사용하여 탭 막대 컨트롤러의 탭 변경
답변
나는 조금 늦은 오전하지만 내 ANS 발견 - 나는 4 UIviewcontrollers 프로그래밍 방식으로 만든 다음 그것의 배열을 생성
합니다.
var views = [CareTeamTableViewController(),VFCChatQViewController(), NewAccountViewController(), ShareViewController()]
는 그럼 난 내 주요 UIViewController에
private func initMainScroll() {
scrollView = UIScrollView.init()
scrollView?.delegate = self
scrollView?.showsHorizontalScrollIndicator = false
scrollView?.isPagingEnabled = true
self.view.addSubview(scrollView!)
}
에있는 ScrollView를 추가하고 다음과 같이 전망 배열 추가 :
func setupScrollView(complete:()->()) {
scrollView?.frame = views.first!.view.frame
scrollView?.contentSize = CGSize(width: CGFloat(views.count) * UIScreen.main.bounds.width, height: 0)
_ = views.map({ addViewToScrollView($0) })
_ = views.map({ $0.view.frame.origin = CGPoint(x: CGFloat(views.index(of: $0)!) * UIScreen.main.bounds.width, y: 0) })
complete()
}
func addViewToScrollView(_ viewController: UIViewController) {
scrollView?.addSubview(viewController.view)
viewController.willMove(toParentViewController: self)
addChildViewController(viewController)
}
나는 최선의 방법은 모든 탭보기를 UIScrollView
에 넣는 것이라고 생각합니다. 서로 옆에 놓습니다.
tabbarController
에 스크롤보기 대리자 메소드를 구현하십시오. 당신은 아마하는 사용자가이 같이 스크롤 중지 될 때 당신이 볼 알고 scrollViewDidEndScrollingAnimation
및 scrollViewDidEndDecelerating
가 필요합니다 여기
let page_width=UIScreen.main.bounds.width
let page=Int(floor((scrollView.contentOffset.x-page_width/2)/page_width)+1)
, 나는 당신의 탭보기 각각의 화면과 같은 크기입니다 가정합니다.
'UIPanGestureRecognizer'를 사용하여이 작업을 수행 할 수 있습니까? –
당신은 스크롤 뷰와 함께'UIPanGestureRecognizer'를 필요로하지 않습니다. –
각 탭에는 3 개의 다른 UIViewController가 있습니다. 따라서 'UIScrollView'에 추가하는 것은 어려울 것입니다. –
- 1. 가로 스 와이프를 사용하여 탭 전환
- 2. AngularJS 컨트롤러의 탭 변경
- 3. android에서 스 와이프를 통해 탭 사이를 전환하십시오.
- 4. 탭 막대 컨트롤러의 내비게이션 컨트롤러에서 스 와이프를 사용 중지하고 사용 설정하는 올바른 방법
- 5. iOS에서 탭 막대 컨트롤러의 탭 막대를 수정하려면 어떻게해야합니까?
- 6. 마스터보기 컨트롤러의 탭 모음
- 7. iOS에서 탭 막대 컨트롤러의 스택에서보기 팝업 방법
- 8. 탭 막대 컨트롤러의 탭에서보기를 갱신하는 방법
- 9. UISplitViewController가 사용자 정의 탭 막대 컨트롤러의 자식으로
- 10. 탭 막대 컨트롤러의 특정 탭에 연결하는 방법
- 11. 탭 막대 요소의 언어 변경
- 12. 프로그래밍 방식으로 탭 막대 변경
- 13. 탭 모음 컨트롤러의 모달보기
- 14. Android 탭 스 와이프
- 15. 내비게이션 막대 내 탭 막대
- 16. 아래쪽 탐색 막대 - 탭 아이콘 색 변경
- 17. 애니메이션은 탭 막대
- 18. 탭 막대 및 스토리 보드 : 기본 탭 변경
- 19. 탭 컨트롤러의 일부인 PFQueryTableViewController?
- 20. iOS의 탭 막대 시뮬레이션
- 21. 탭 막대 앞에보기 넣기
- 22. 탭 막대 : 탭 간의 상호 작용
- 23. 탭 컨트롤러의 페이징 컨트롤을 숨기는 탭 제한
- 24. 스 와이프 또는 탭 확인
- 25. 컨트롤러보기 탭 막대 아이콘 및 동작 변경
- 26. 탭 막대 컨트롤러 .... 두 번째보기 컨트롤러에는 탭 막대 항목이 없습니다?
- 27. 탭 선택 감지 : 탭 막대 컨트롤러
- 28. 탭 막대 컨트롤러 언로드
- 29. 탭 막대 제거
- 30. 탭 막대 컨트롤러에서 분기 하시겠습니까?
당신이'UIPanGestureRecognizer'를 시도를? – SLearner
손가락 터치와 스 와이프를 사용하여'SelectedIndex'를 변경하는'TabBarControllerAnimation' 메소드를 제안 해 주시겠습니까? –