蜘蛛人三部曲
利用 page control,segmented control,button & gesture 更換內容
Published in
4 min readNov 26, 2022
1.先拉Outlet
@IBOutlet weak var titleLabel: UILabel!
@IBOutlet weak var pageDot: UIPageControl!
@IBOutlet weak var titleSegmentedControl: UISegmentedControl!
@IBOutlet weak var posterImageView: UIImageView!
let titleArray = ["Spider-Man: Homecoming", "Spider-Man: Far From Home", "Spider-Man: No Way Home"]
var index = 0 //宣告index 初始為0
2.Function
func changeData() {
titleLabel.text = titleArray[index] //標題名稱
pageDot.currentPage = index
titleSegmentedControl.selectedSegmentIndex = index
posterImageView.image = UIImage(named: titleArray[index]) //這邊設定圖片名稱跟標題名稱一樣
}
3.Action
想出前一頁跟下一頁的邏輯就可以套用在各個action中
@IBAction func segmented(_ sender: Any) {
index = titleSegmentedControl.selectedSegmentIndex
changeData()
}
@IBAction func pageControl(_ sender: Any) {
index = pageDot.currentPage
changeData()
}
@IBAction func pre(_ sender: Any) {
index = (index + titleArray.count - 1) % titleArray.count
changeData()
}
@IBAction func next(_ sender: Any) {
index = (index + 1) % titleArray.count
changeData()
}
//上一頁
@IBAction func rightSwipe(_ sender: Any) {
index = (index + titleArray.count - 1) % titleArray.count
changeData()
}
//下一頁
@IBAction func leftSwipe(_ sender: Any) {
index = (index + 1) % titleArray.count
changeData()
}