Swift 3.0 Class Note – UIPickerView, Protocol, POP v.s OOP

Presenter : Wei Wei

UIPickerView(選單)

  • AutoLayout 要點:( 其實很簡單) 設定好  x & y 座標 , width, height
  • 和UITableView類似:
    1. UIPickerViewDataSource 決定選單有幾類的選項 `numberOfComponents`

    2. UIPickerViewDataSource 決定各類的選項,有幾項 `numberOfRowsInComponent`

    3. UIPickerViewDelegate 決定各項標題 `titleForRow`
    4. UIPickerViewDelegate 選取某項後的方法 `didSelectRow`
    5. UITableView的Section對應UITableView的Component

github : git@github.com:dan12411/HelloPickerView.git

Protocol (協定)

  • 不實際定義方法,服從的class(類別)需實作方法
  • 一個class 可服從多個協定,但只能繼承一個父類別(super class)
  • %e8%9e%a2%e5%b9%95%e5%bf%ab%e7%85%a7-2016-09-29-%e4%b8%8b%e5%8d%885-58-46
  • 在storyboard將PickerView連結到ViewController,相當於程式碼第86行
  • 第64~66 行& 76~81行,相當於Apple已經幫我們寫好的部分
  • 第70~72 行,相當於我們自己寫上實作的方法
  • POP 相對於 OOP的優點
    1. OOP 如果很多class,容易忘記override
    2. class只能單一繼承super class,缺乏彈性
    3. protocol可當一種型別使用
    4. class 效率較差、資料容易被誤改

ref. :

  1. POP@WWDC
  2. struct or class
  3. POP@Swift
廣告

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s