Uipageviewcontroller

5 답변 글타래를 보이고 있습니다
  • 글쓴이
    • 끼리니
      참가자
      • 글작성 : 7
      • 답글작성 : 6

      안녕하세요~! UIPageViewController를 공부하면서 궁금한점이 생겨서 질문드리게 되었습니다
      현재 horizontal scroll 로 swipe되는 식으로 우선 구현되어있습니다
      실제 제스쳐interaction없이 코드로 swipe되는걸 구현할 수 있을까요?
      찾아보니 setViewControllers 로 이전VC 다음 VC를 부르는 방식이 많은데 이 방식은 실제 swipe한거랑은 달라서요 예를 들어서 아래와 같은 함수는 타지 않습니다!
      func pageViewController(_ pageViewController: UIPageViewController, didFinishAnimating finished: Bool, previousViewControllers: [UIViewController], transitionCompleted completed: Bool)
      진짜 swipe를 실제로 한것처럼 똑같이 작용하도록 코드로 구현할수 있는 방법이 있을까요? 찾아보고 고민해봤지만 제가 많이 부족한것 같습니다ㅠㅜ

    • 멍단비
      참가자
      • 글작성 : 10
      • 답글작성 : 98

      음~~ 이해가 잘 가지 않네요.

      실제 제스쳐interaction없이 코드로 swipe되는걸 구현할 수 있을까요?

      이 문장을 기준으로만 답을 달아본다면, 당연히 가능은 합니다. 제스쳐든, 버튼을 탭하는 동작이든, 기기를 돌리는 작업이든 그저 trigger역할만 수행하는 거니까요.

      swift swipe gesture recognizer를 없애고 버튼을 탭하는 방식으로 바꾼다면 제스쳐 없이도 구현이 가능하겠죠.

      다만 하시고 싶으신 작업이 정확히 무엇인지는 이해를 못하겠는데,,

      그 뷰컨트롤러를 페이징하는 작업을 원하시는 것 같기도한데..(제가 이해를 잘한건지 모르겠네요. 멍청해서)

      그런 작업은 보통 스크롤뷰컬렉션뷰를 주로 활용합니다. 뭐였더라..scrollToitem 이거 였던 것 같네요.

      도움이 될 지 모르겠네요. 좋은 주말 보내세요~

      • 이 답변은 멍단비에 의해 4 years, 8 months 전에 수정됐습니다.
    • 성훈
      참가자
      • 글작성 : 2
      • 답글작성 : 14

      페이지를 변경후의 액션을 왜 해당 함수를 통해서만 하려고 하는지 이해가 잘 되지 않네요.

      해당 함수는 제스쳐를 통해서 화면전환이 일어날 때만 호출이 됩니다.

      아래 애플 공식문서를 읽어보심 좋을 것 같습니다.
      UIPageViewControllerDelegate

      페이지가 변환될 때 setViewControllers로 변경할 경우 해당 함수의 completion에서 처리를 하는 것도 하나의 방법이라고 생각됩니다.

    • 야곰
      키 마스터
      • 글작성 : 37
      • 답글작성 : 579

      저도 질문이 이해가 잘 안되네요.

      질문을 다시 한 번 정리해주면 좋을 것 같습니다 🙂

    • 끼리니
      참가자
      • 글작성 : 7
      • 답글작성 : 6

      안녕하세요~ 역시 참고문서를 꼼꼼하게 읽어봤어야 하는거였어요… 제가 찾던 답이 해당 함수는 제스쳐를 통한 화면전환에서만 탄다. 였던것 같아요ㅠ 그러고 나니까 이제 다른 여러 방법들이 보이더라구요. 답변 너무 감사합니다. 아! 그리고 CollectionView로도 해보고있습니다, 감사합니다~!

      • 이 답변은 끼리니에 의해 4 years, 8 months 전에 수정됐습니다.
    • 야곰
      키 마스터
      • 글작성 : 37
      • 답글작성 : 579

      마음이 급하면 눈앞에 있어도 잘 안보이죠 🙂
      급할수록 차분히 문서를 다시 차분히 읽어보면 실마리가 보일겁니다 🙂

5 답변 글타래를 보이고 있습니다
  • 답변은 로그인 후 가능합니다.

logo landscape small

사업자번호 : 743-81-02195
통신판매업 신고번호 : 제 2022-충북청주-1278 호
고객센터 : 카카오톡채널 @yagom