[CS193P] 第三次作業心得筆記

在前幾次的筆記中我們談到了如何透過Core Graphics來進行View的繪圖,也有談到一些動畫的概念。這次的作業就是要讓我們有機會實做這些介面的效果,讓我們一起來看看吧!
評論
評論

在前幾次的筆記中我們談到了如何透過 Core Graphics 來進行 View 的繪圖,也有談到一些動畫的概念。這次的作業就是要讓我們有機會實做這些介面的效果,讓我們一起來看看吧!

Hello Poly(第二部份)

在第二次的作業中我們曾經設計過一個簡單的 iPhone 程式用來顯示我們所設計的多邊形類別,並且在介面上加入按鈕,以便使用者能夠透過 iPhone 介面來調整多邊形的邊數。

而這一次的作業內容就是要基於上次的成果繼續新增功能,包含多邊形的繪圖顯示以及名稱顯示,還有儲存使用者的設定值。

或許乍看之下你會感到有點困難,不僅要繪圖,還要在正確的時間點更新繪圖的結果,此外儲存使用者的設定也是從未見過的挑戰。但事實上,這些技巧我們都已經在幾次的心得筆記中有提過:

  1. 為了能夠讓我們方便畫多邊形的形狀,我們得先建立自訂的 View 類別,稱為 PolygonView。關於建立自訂 View 的作法我們在 心得筆記之一 的尾端曾經提過,關鍵就是繼承 UIView,並且在 Interface Builder 中設定好連結就可以了。
  2. 而繪圖的部份,則是可以透過重載 - drawRect 方法,搭配 心得筆記之二 中所談到的 CG 繪圖方法,就可以順利的把多邊形畫出來。
  3. 你可能會發現,你並不知道多邊形的頂點座標,別擔心,這部份在作業的公告最後一頁有提供,直接複製使用就可以囉。唯一需要注意的是,因為 CGPoint 不是類別而是 C 的結構 (Struct),並不能直接存入 NSArray,必須包裝成 NSData 才行,作業公告也有敘述這部份的處理方式。
  4. 那文字的部份呢?我們只要在 PolygonView 下面加入一個 UILabel 就可以了,需要改變文字內容的話只需要設定 text 屬性就好,不需要透過 CG 重新繪圖。
  5. 最後關於使用者的設定儲存,NSUserDefaults 這個類別可以幫上不少忙,在第五次上課的投影片中的最後幾頁有介紹使用方式,可千萬別錯過了。

結論

這次的作業內容並不是非常困難,只要能夠抓住前幾次上課的觀念,應該可以順利的完成。下次的連載我們將回到課程上,還請大家敬請期待!

這次的作業筆者也已經完成,有興趣的讀者,歡迎在這篇文章留言,我會一一寄給各位提供參考,若因為上次作業沒有參與,無法進行這次作業的讀者,也歡迎來信索取。

相關資源