[swift] 이미지 슬라이드쇼에 페이징 인디케이터 추가하기

개요

이미지 슬라이드쇼는 많은 iOS 앱에서 자주 사용되며 사용자에게 시각적인 경험을 제공하는데 도움을 줍니다. 이 글에서는 Swift를 사용하여 이미지 슬라이드쇼에 페이징 인디케이터를 추가하는 방법을 알아보겠습니다.

단계별로 알아보기

1. UIPageControl 추가하기

UIPageControl은 사용자에게 현재 슬라이드의 위치를 알려주는 역할을 합니다. 인터페이스 빌더에서 UIPageControl을 추가하거나 코드에서 프로그래밍 방식으로 생성할 수 있습니다.

let pageControl = UIPageControl()
pageControl.numberOfPages = imageNameArray.count
pageControl.currentPage = 0
self.view.addSubview(pageControl)

2. Auto Layout 설정하기

UIPageControl의 위치를 정확하게 설정하기 위해 Auto Layout을 사용합니다. UIPageControl을 가운데에 위치시키거나 원하는 위치에 배치할 수 있습니다.

pageControl.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
    pageControl.centerXAnchor.constraint(equalTo: view.centerXAnchor),
    pageControl.bottomAnchor.constraint(equalTo: view.bottomAnchor, constant: -20)
])

3. 현재 페이지 표시하기

슬라이드가 변경될 때마다 UIPageControlcurrentPage 속성을 업데이트하여 현재 페이지를 표시합니다.

func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
    let currentPage = Int(scrollView.contentOffset.x / scrollView.frame.size.width)
    pageControl.currentPage = currentPage
}

결론

이제 이미지 슬라이드쇼에 페이징 인디케이터를 추가하는 방법을 알게 되었습니다. UIPageControl을 사용하여 사용자에게 현재 슬라이드의 위치를 시각적으로 표시할 수 있습니다.

참고 자료