[CS193P] 第三次作業心得筆記
Richard
17 February 2010 12:24 am
在前幾次的筆記中我們談到了如何透過Core Graphics來進行View的繪圖,也有談到一些動畫的概念。這次的作業就是要讓我們有機會實做這些介面的效果,讓我們一起來看看吧!
Hello Poly(第二部份)
在第二次的作業中我們曾經設計過一個簡單的iPhone程式用來顯示我們所設計的多邊形類別,並且在介面上加入按鈕,以便使用者能夠透過iPhone介面來調整多邊形的邊數。

而這一次的作業內容就是要基於上次的成果繼續新增功能,包含多邊形的繪圖顯示以及名稱顯示,還有儲存使用者的設定值。
或許乍看之下你會感到有點困難,不僅要繪圖,還要在正確的時間點更新繪圖的結果,此外儲存使用者的設定也是從未見過的挑戰。但事實上,這些技巧我們都已經在幾次的心得筆記中有提過:
- 為了能夠讓我們方便畫多邊形的形狀,我們得先建立自訂的View類別,稱為PolygonView。關於建立自訂View的作法我們在心得筆記之一的尾端曾經提過,關鍵就是繼承UIView,並且在Interface Builder中設定好連結就可以了。
- 而繪圖的部份,則是可以透過重載
- drawRect方法,搭配心得筆記之二中所談到的CG繪圖方法,就可以順利的把多邊形畫出來。 - 你可能會發現,你並不知道多邊形的頂點座標,別擔心,這部份在作業的公告最後一頁有提供,直接複製使用就可以囉。唯一需要注意的是,因為CGPoint不是類別而是C的結構(Struct),並不能直接存入NSArray,必須包裝成NSData才行,作業公告也有敘述這部份的處理方式。
- 那文字的部份呢?我們只要在PolygonView下面加入一個UILabel就可以了,需要改變文字內容的話只需要設定text屬性就好,不需要透過CG重新繪圖。
- 最後關於使用者的設定儲存,
NSUserDefaults這個類別可以幫上不少忙,在第五次上課的投影片中的最後幾頁有介紹使用方式,可千萬別錯過了。
結論
這次的作業內容並不是非常困難,只要能夠抓住前幾次上課的觀念,應該可以順利的完成。下次的連載我們將回到課程上,還請大家敬請期待!
這次的作業筆者也已經完成,有興趣的讀者,歡迎在這篇文章留言,我會一一寄給各位提供參考,若因為上次作業沒有參與,無法進行這次作業的讀者,也歡迎來信索取。


Pingback: [CS193P] iPhone開發課程系列回顧 - Inside