#38 利用 page control,segmented control,button & gesture 更換內容

點選 page control(小圓點)

  • 點選小圓點時,segmented control 和顯示頁數的 label 也要更新。

page control 預設就有點選功能,點選目前選取的 page control 的右邊會跳到下個小圓點,點選它的左邊會跳到前個小圓點。

ps: 點選小圓點只會跳下一個 / 上一個,不會直接跳到點選的小圓點。

從 UIPageControl 的 currentPage 可知道目前選取的小圓點是第幾個。

從 UISegmentedControl 的 selectedSegmentIndex 可讀取或設定目前選取的是第幾個 segment。

點選 segmented control

  • 點選 segmented control 更換內容。
  • segmented control 更新時,小圓點也要更新。

點擊向左 / 向右的 button

  • 點選向右 button 顯示下一頁的內容,在最後一頁點選向右 button 將顯示第一頁的內容。點選向左的 button 顯示上一頁的內容,在第一頁點選向左 button 將顯示最後一頁的內容。
  • 更換內容時,小圓點,segmented control & 顯示頁數的 label 也要更新。

swipe gesture (左滑右滑)

  • 在圖片上左滑顯示下一頁的內容,在最後一頁左滑將顯示第一頁的內容。在圖片上右滑顯示上一頁的內容,在第一頁右滑將顯示最後一頁的內容。
  • 更換內容時,小圓點,segmented control & 顯示頁數的 label 也要更新。

點選按鈕隨機內容

使用 UIPageControlTimerProgress 無限輪播內容

Long Press Gesture Recognizer(長按)

  • 長按圖片觸發隨機更換內容。
  • 更換內容時,小圓點,segmented control & 顯示頁數的 label 也要更新。

提示: 隨機功能可使用 array 的 function randomElement。

進階功能

多層選擇

隨機功能

點選按鈕隨機內容,搭配 while 確保點選隨機時一定會改變內容,不會跟上次一樣。

Pan Gesture Recognizer(拖曳)

拖曳移動圖片上的文字。

ps: 參考 Develop in Swift Explorations 4.2 的 MemeMaker。

用 struct 定義資料型別

作品集

--

--

彼得潘的 iOS App Neverland
彼得潘的 100 道 Swift iOS App 謎題

彼得潘的iOS App程式設計入門,文組生的iOS App程式設計入門講師,彼得潘的 Swift 程式設計入門,App程式設計入門作者,http://apppeterpan.strikingly.com