螢幕快照 2012-10-20 下午8.10.47
UIView 是一切 iOS 中的畫面基礎,你在 iPhone/iPad 看的到的每一個元件,都是以 UIView 為基礎開始的。
UIView 並不一定是個佔有整個畫面,所有 UIView 或其子孫後代 Class ,如 UIButton ,UINavgation,UILabel,UIWebView 都是一層一層堆在畫面上。
UIView 也繼承了 UIResponder 這個類別,所以它也可以處理些多點觸控的事件與處理,像是放大/縮小手勢,轉向手勢等。
所以 UIView 的所有設定,如大小, 背景色,也都可以用在其他繼承 UIView 類別的子孫類別。
一個 UIView 至少會有位置與大小,也就是 farme,所以通常用 initWithFarme 方法來產生UIView。farme 是一個 CGRect (請參閱 CGRect 來查看相關內容)。實際產生一個 UIView 可以用下面的程式來產生:

shenfive 發表在 痞客邦 留言(0) 人氣()

螢幕快照 2012-10-17 下午9.59.12
自從 iPhone 5 與 iOS 6 上市之後, iPhone 有了多種解析度與方向,以往一個簡單的數字座標設定,眼下在不同解析度下面,就會有不同的結果。如果只想知道程式化手動建立 Constranints, 可以看這兒:手動建立Constransts 
先看一下實做Demo:
  
舉例來說,如果我們在XCode 沒有支援 autolayout 的版本(或關掉)下,用 StoryBoard 設定了一個 Button 並放在畫面中間的下面,大概會是這個樣子:

shenfive 發表在 痞客邦 留言(0) 人氣()

在編寫物件導向的程式,都有類似的概念,就是對自已或父類別做為發送訊息(使用方法)的對像,在 Obj-C 中,用了兩個字來執行這個概念  self 與 super。
 
簡單的說:
self 就是自已,而 super 就是它的父類別

shenfive 發表在 痞客邦 留言(1) 人氣()

block 語法
Block 是 iOS 4.0 以後才有的語法,而且是 XCode 特有的 C 語法,其不存在於其他 C 的標準中。嚴格來說它就是 C function 的另一種表現方式。因為在 iOS 中,大量的應用了Target-Action 機制(見Hello Target-Action),所以我們經常需要寫只需要一次的 funtion,且程式碼不長時, Block 的功能就出來了,Block還有很多不同的使用方式分別說明如下。

第一個概念就是把它作單純的 function 使用,就像是宣告一個變數一樣宣告一個Block, Block 是 function 或 method 中寫另一個 function,限用於 function 或 methond 中。經過特別的宣告,Block 可以使用相同的變數。

shenfive 發表在 痞客邦 留言(0) 人氣()

也許是因為 protocol 很難用文字讓人體會它的設計理念,很多文件都對它講的不是很清楚,但Protocol 協定與 Delegate 委託(也稱做代理或委派)是 Objective-C 中很重要的一部份。但對於初寫程式的人來說,這是物件導向中,最難理解與使用的一部份,大部份的人要實作數個月後,才能開始體會與實用。不論如何,先記住它的語法與使用法好了。

由於 Objective-C 只支援單繼承,對於繼承自不同父Class 的 Class 來說,如果需要有共同的方法名稱,就需要使用 Protocol,但 Protocol 本身並不會寫方法的實作,只會作方法的宣告。實作的部份,要 Class 自已來作。所以Protocol 的動作其實是非常簡單的。如果我們在 XCode 中新增一個 Protocol 也只會有一個 .h 檔不會有 .m 檔。
Protocol 的語法如下:

shenfive 發表在 痞客邦 留言(1) 人氣()


這是用 XCode 視覺化工具拉的,如果你只是要先玩一下,了解一下如何以最簡單的方式寫一支有按扭的 APP。我們要開始建立我們的第一個程式了,先說一下我用的軟體環境,我用來Demo 的環境是 OS X Lion 10.7.3,使用X Code 4.2 來製作我的們的第一支程式。 
  

shenfive 發表在 痞客邦 留言(2) 人氣()

insertFrameWork
iOS 有很多方式讓系統發出聲音,這兒要提的是最簡單的一個,就是使用 AudioToolBox 提供的 System Sound。
首先我們先建立一個 Singel View 專案。在設所有的聲音相關處理時,預設是不會加入相關的 Framework 的,所以 
  
我們在開啟一個專案後,請依下列動作加入 相關的 Frame work:

shenfive 發表在 痞客邦 留言(1) 人氣()


這一部份為單純使用Code寫一個顯示的畫面的HelloWorld共三篇,此為第三篇。  第一篇第二篇,,有關這個分類的說明

shenfive 發表在 痞客邦 留言(1) 人氣()

在正式深入研究APP之前,有很多事情要做,但全搞清楚那太累人了。
按照學習程式語言的慣例,學習的第一件事,就是寫一個 Hello World 程式。
在這系例中,會寫很多不同的 Hello World 程式,計畫寫個十幾支不同的 Hello World如果一個Hello World 寫不完,就分成好幾段,成一系例,會有相同的開頭。

shenfive 發表在 痞客邦 留言(0) 人氣()


這一部份為單純使用Code寫一個顯示的畫面的 Hello World共三篇,此為第二篇。    第一篇,第三篇,有關這個分類的說明

shenfive 發表在 痞客邦 留言(0) 人氣()


這一部份為單純使用Code寫一個顯示的畫面的HelloWorld共三篇,此為第一篇。  第二篇,第三篇,有關這個分類的說明

shenfive 發表在 痞客邦 留言(2) 人氣()

這而講的是物件導向的基本概念,而最重要的概念就是下面這幾個 

【Class 類別】
【Instance Variable 實體變數】

shenfive 發表在 痞客邦 留言(0) 人氣()

Blog Stats
⚠️

成人內容提醒

本部落格內容僅限年滿十八歲者瀏覽。
若您未滿十八歲,請立即離開。

已滿十八歲者,亦請勿將內容提供給未成年人士。