
iPad酷樂誌
babyfish0226 ![]() |
原始來源:Creating an iPhone Application 建立第一隻iPhone的應用程式(一) 在 一個高階開發的階段,建立一個iPhone應用程式的過程是和寫Max OS X的軟體是差不多的,因為兩者都是使用相同的工具及許多的基本函式庫(Libraries)。不過儘管這兩個非常的相似但還是有一些重要地方是不相同的。 首先,iPhone不是一台桌上型的個人電腦,他被設計來作特定用途的使用所以必須用比較不一樣的方式來達成。而這個目標也許必須利用iPhone作業系 統來達到一個看似先進但卻無關緊要或不切實際的特色來應用在一個行動的環境。而iPhone及iPod Touch的小螢幕也代表著您應用程式的使用者界面必須有效的組織並強調在使用者最需要的資訊上面。 iPhone作業系統使用了許多桌上 型應用程式所無法達到的方式來讓使用者與iPhone及iPod Touch來進行互動。多點觸控介面是一個接收系統事件的全新革命性方式,當每一根手指頭接觸到螢幕時都將進行回報並讓多點觸控的手勢及其他複雜輸入的掌 控能更加的簡單。除此之外,內建的硬體特徵如加速度計,雖然在部份桌上型系統也看的到,但在iPhone的作業系統中卻被更廣泛的應用在追蹤螢幕目前的位 置並用來即時調整您相對應的內容。了解如何在您的程式中去應用這些特色將能有效的幫助您做出最佳化的設計。 了解iPhone設計程式的最佳方式就是從閱讀一個範例開始。這一篇文章將用一個名為 MoveMe 的範例程式來引導您認識該如何來設計一支iPhone的應用程式,而這個範例將展示許多iPhone程式中相當型的一些行為與動作,包括了;
圖1 展示了這支程式的介面。觸碰這個Welcome的按鈕將觸發一個動畫,而這動畫將會以您手指頭觸碰位置為中心並以振動的方式進行置中。當您在螢幕上移動您 的手指頭時(按住不放),這個按鈕也將跟著您手指頭的位置來進行移動,但當您把手指頭由螢幕上移開的時候(放開),此時將會使用另一組動畫來讓這個按鈕快 速地回到他本來的位置。而在按鈕以外的地方用手指頭雙擊螢幕,此時將會用不同的語言來切換按鈕上的歡迎訊息。 在繼續閱讀其他的章節之前,您必須先下載MoveMe的範例程式好讓您能跟著其中的原始程式碼來直接進行學習,此外,您也必須先閱讀完下面幾篇在iPhoneDev Center的文章以建立iPhone作業系統、開發工具及程式語言等基本的概念; 如果您對 Objective-C 程式語言仍不太熟悉,您還必須先閱讀 Objective-C 初級教學 來熟悉 Objective-C 的基本語法。 圖2示範了MoveMe這套程式在Xcode專案視 窗中的顯示情形。為了開啟這個專案,請先複製MoveMe到您的本地硬碟並雙擊MoveMe.xcodeproj這支檔案(您也可以由Xcode中選擇 File>Open來開啟)。這組專案包括了多個Objective-C的來源檔案(附檔名為.m的檔案)、一些影像檔案以及其他的資源,另外還有 一個建立程式所預先定義的目標等(MoveMe) 。 圖 2 MoveMe專案視窗 建立 MoveMe 程式 請跟著下列的動作來建立 MoveMe 程式並在模擬器上執行:
當 程式完成build(建立)的的時候,Xcode將讀取程式至iPhone的模擬器並直接啟動它。現在使用您的滑鼠點擊畫面上寫著Welcome的按鈕, 然後在螢幕上隨意拖曳並看看程式的反應。如果您有一個發展中的裝置設定,您也能夠建立您的程式並測試您裝置的執行狀況。如果您想取得關於裝置在開發上的讀 取與配置的更多相關資訊,請見 iPhone OS Programming Guide 文章中"Development Environment" 章節。 關於記憶體管理 注意事項:
iPhone作業系統並不支援在Mac OS X v10.5及以後版本中所使用的Garbage collection 的記憶體管理功能。
如果您想配置一個未與任何物件進行關聯的一般記憶區塊,您可以藉由呼叫標準的malloc library函式庫,當您使用malloc所做的任何記憶體配置,當您完成該物件的工作時您還必須負責使用 free 功能函式的方式來釋放記憶體。系統將不會為您釋放這malloc-based的記憶區塊。 無 論您將如何配置及使用您的記憶體,在iPhone作業系統中管理您全部記憶體的使用將遠比在Mac OS X上還來的重要。雖然iPhone在作業系統中同樣使用了虛擬記憶體系統,但他並非使用記憶體暫存檔(swap file)的方式。 也就是說,若有需要的話,您的Code Page可以超過但您必須將您應用程式的資料在同一個時間一次放到記憶體中。系統將監控剩餘可用記憶體的全部數量,並且決定該為您的應用程式給與多少所需 的記憶體。如果記憶體的使用率仍然過高甚至接近臨界點,則系統將可能直接中斷並結束您的應用程式。不過,這方法只會在最後不得不的情況之下使用,以用來確 保能有足夠的記憶體來維持您的重要操作如接聽電話等功能。 關於在iPhone作業系統中配置物件的更多資訊,請見 Cocoa Fundamentals Guide 。而想要取得更多關於如何為您的應用程式做記憶體最佳化的資訊與小技巧,請參考 iPhone OS Programming Guide 中 "Managing Your Memory Usage" 的章節。 續..此小節翻譯未完成
|
最新回應
2 小時 1 分鐘 前
3 小時 24 分鐘 前
9 小時 52 分鐘 前
9 小時 58 分鐘 前
10 小時 10 分鐘 前
10 小時 17 分鐘 前
10 小時 41 分鐘 前
13 小時 2 分鐘 前
13 小時 11 分鐘 前
20 小時 49 分鐘 前