iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 22
0
Software Development

Swift零基礎實作旅遊景點app系列 第 22

Swift-Day22: 旅遊App中的TableView可以向左滑動實作練習

前言:昨天發現旅遊app中有一個功能是可以把整頁的TableView水平滑動,越看功能越多越來越複雜,其實裡面還有一些配合按鈕滑動整個TableView,但這個我目前毫無想法,所以就先試做簡單的TableView可以整頁向左滑,另外也要感謝團隊成員的幫忙,才找到我的問題,這次的bug卡很久啊。

1. 簡介:

  • 要用到的UIKit包含UIScrollView與UITableView。
  • 概念上我目前是先建立好幾個新的ViewController,然後再建立每個TableView。
  • 網路上有看到一種可以自己隨時追加的tableView app,目前也完全不知道怎麼做的,可能需要再研究,現在就只先做出基本款。
    結果大概如下:

2. 建立方法:

  1. 我的storyboard介面:包含一個主要的ViewController裡面有ScrollView(名稱為myScrollView);另外建立兩個ViewController(裡面放TableView)。
  2. 初始化第一個及第二個TableView的Controller。
let mainStoryboard = UIStoryboard(name: "Main", bundle: nil)
        let firstViewController = mainStoryboard.instantiateViewController(withIdentifier: "firstTableView") as! FirstViewController
let secondViewController = mainStoryboard.instantiateViewController(withIdentifier: "secondTableView") as! SecondViewController
  1. 設定第二個View的起始位置。
var frame2ForSecondViewController = secondViewController.view.frame
        frame2ForSecondViewController.origin.x = self.view.frame.size.width
        secondViewController.view.frame = frame2ForSecondViewController
  1. 加到畫面上與調整ScollView的大小:
self.addChildViewController(firstViewController)
        self.myScrollView.addSubview(firstViewController.view)
        firstViewController.didMove(toParentViewController: self)
        
        
        self.addChildViewController(secondViewController)
        self.myScrollView.addSubview(secondViewController.view)
        secondViewController.didMove(toParentViewController: self)
        
        //設定UIScrollView的大小
        myScrollView.contentSize = CGSize(width: self.view.frame.width * 2, height: self.view.frame.height)

上一篇
Swift-Day21:以假JSON檔練習載入TableView並連接segue至下個WebView
下一篇
Swift-Day23:旅遊App中利用CollectionView中的Item來進行ScrollView的控制練習
系列文
Swift零基礎實作旅遊景點app30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言