偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Xcode 4開發(fā)第一個(gè)iPhone程序 圖文實(shí)例(上)

移動(dòng)開發(fā) iOS
在開始之前,我們首先來分析一下項(xiàng)目需求,這是一個(gè)非常簡單的項(xiàng)目,只要在屏幕上顯示一段“Hello World”的文字,當(dāng)然還有一些附加條件,來看內(nèi)容。

Xcode 4開發(fā)***個(gè)iPhone程序“Hello World”是本文要介紹的內(nèi)容,分為上下篇為友們介紹。

項(xiàng)目要求

寫一個(gè)iPhone程序,在屏幕正中顯示文字“Hello Word”,粗體,字體大小26磅,字體顏色紅色,有黑色陰影,陰影光源為左上角,偏移1像素,支持設(shè)備旋轉(zhuǎn)。

需求分析

在開始之前,我們首先來分析一下項(xiàng)目需求,這是一個(gè)非常簡單的項(xiàng)目,只要在屏幕上顯示一段“Hello World”的文字,當(dāng)然還有一些附加條件:

對字體、字體顏色、字體大小有要求,有陰影效果

要求文字顯示在屏幕正中

支持設(shè)備旋轉(zhuǎn),并且無論設(shè)備如何旋轉(zhuǎn),文字都還是顯示在屏幕正中

根據(jù)這些需求,我們將從簡單到復(fù)雜,逐步來實(shí)現(xiàn),分成2步來實(shí)現(xiàn):

在屏幕上顯示文字,設(shè)置字體和字體大小,讓文字顯示在屏幕正中心

支持設(shè)備旋轉(zhuǎn),并且保證旋轉(zhuǎn)后文字還是居中狀態(tài)

產(chǎn)品設(shè)計(jì)

iPhone4之前的屏幕是320x480,到iPhone4的時(shí)候,支持了高清屏,屏幕分辨率變成了640x960。iPhone支持四個(gè)方向的旋轉(zhuǎn)的,橫屏和豎屏表現(xiàn)略有差異,因?yàn)轫?xiàng)目需求要求支持屏幕旋轉(zhuǎn),所以針對橫屏和豎屏,界面表現(xiàn)有所差異,簡單畫一下原型設(shè)計(jì)圖如下:

Xcode 4開發(fā)***個(gè)iPhone程序 圖文實(shí)例 

Xcode 4開發(fā)***個(gè)iPhone程序 圖文實(shí)例

系統(tǒng)分析和設(shè)計(jì)

如果我們還沒iOS下的開發(fā)經(jīng)驗(yàn),那么首先需要去查閱一些相關(guān)資料,讓我們知道如何來開發(fā)一個(gè)iphone程序。蘋果為iOS的開發(fā)者提供了一個(gè)非常詳細(xì)和全面的網(wǎng)站:“iOS Developer Center”,網(wǎng)址:http://developer.apple.com/ios。在iOS Dev Center,有所有iOS SDK的類文檔、入門文檔、各種開發(fā)指南、示例代碼庫等,開發(fā)iOS平臺(tái)的項(xiàng)目,免不了要經(jīng)常上來查閱一些相關(guān)資料。不過比較遺憾的是,目前iOS Dev Center的文檔和資料還是英文為主,中文資料較少,對于英文閱讀不好的同學(xué)是一個(gè)考驗(yàn)。

Xcode 4開發(fā)***個(gè)iPhone程序 圖文實(shí)例

現(xiàn)在,我們從技術(shù)角度來分析一下如何實(shí)現(xiàn)項(xiàng)目需求。同樣一個(gè)項(xiàng)目,無疑是有很多種技術(shù)方案來實(shí)現(xiàn)的,所以我們有必要定一個(gè)原則,來幫助我們選擇合適的方案,這個(gè)原則就是簡單實(shí)用原則:“我們盡可能采用簡單并且實(shí)用的技術(shù)方案,避免使用復(fù)雜的技術(shù)方案,把時(shí)間和精力浪費(fèi)在一些華而不實(shí)的技巧上面”,本著這個(gè)原則,我們來開始對項(xiàng)目需求進(jìn)行技術(shù)方案的選擇:

在屏幕上顯示特定字體和大小的文字

要在屏幕上顯示特定字體和大小的文字,我們需要先看看iOS SDK中是否已經(jīng)提供了簡單實(shí)用的方式來顯示文字,在iOS Dev Center中,有一篇文章“iOS Human Interface Guidelines”,專門講解了iOS中用戶界面相關(guān)的知識(shí),從中我們可以系統(tǒng)的了解iOS的界面構(gòu)成,各種基本界面元素,并且根據(jù)其中的說明,可以找到UILabel控件是最適合我們項(xiàng)目需求的控件,當(dāng)然也有復(fù)雜的技術(shù)方案,就是采用在界面上自畫的方式,根據(jù)簡單實(shí)用原則,我們就使用UILabel這種iOS自帶控件就可以了。

Xcode 4開發(fā)***個(gè)iPhone程序 圖文實(shí)例

在開始使用UILabel之前,我們需要先來學(xué)習(xí)了解一下UILabel控件,想要了解UILabel控件的功能,在iOS Dev Center中,找到“UILabel Class Reference”,從中我們可以看到UILabel的介紹和所有屬性、方法等詳細(xì)的說明文檔。

Xcode 4開發(fā)***個(gè)iPhone程序 圖文實(shí)例

文檔相當(dāng)全面,不過對于我們來說,關(guān)鍵還是要去獲取項(xiàng)目相關(guān)的資料,從文檔中,我們可以逐一找到我們顯示文字需要的相關(guān)屬性:

text: Label顯示的文字,類型為NSString類,也就是本項(xiàng)目需求中要顯示的“Hello World”。

textAlignment: 文字在Label內(nèi)的對其方式,類型為UITextAlignment枚舉,在本項(xiàng)目需求中,要求文字在屏幕正中顯示,對應(yīng)的屬性值為UITextAlignmentCenter。

font: 文字的字體和大小,類型為UIFont類,也就是本項(xiàng)目需求中要求的:“字體為粗體,字體大小26磅”,對應(yīng)代碼為:[UIFont boldSystemFontOfSize:26]。

textColor: 文字的顏色,類型為UIColor類,也就是本項(xiàng)目需求中要求的:“字體顏色紅色”,對應(yīng)代碼為:[UIColor redColor]。

shadowColor: Label文字的陰影顏色,類型為UIColor類,也就是本項(xiàng)目需求中要求的:“有黑色陰影”,對應(yīng)代碼為:[UIColor blackColor]。

shadowOffset: Label文字陰影的偏移方向和偏移量,類型為CGSize,也就是本項(xiàng)目需求中要求的:“陰影光源為左上角,偏移1像素”,對應(yīng)代碼為:[CGSizeMake(1, 1)]。

讓文字顯示在屏幕正中心

要讓文字顯示在屏幕正中心,我們要優(yōu)先考慮設(shè)置UILabel相關(guān)屬性達(dá)到目的的方式,如果沒有UILabel相關(guān)屬性支持,那么我們就必須根據(jù)UILabel占的大小和屏幕大小來計(jì)算它應(yīng)該擺放的坐標(biāo),從而實(shí)現(xiàn)讓文字顯示在屏幕正中心。在UILabel的文檔中,沒有發(fā)現(xiàn)有屬性設(shè)置它的坐標(biāo),也沒有設(shè)置對其的屬性,這是不是代表UILabel不支持呢?不要忽略一個(gè)問題,iOS所用的編程語言是Objective-C,這個(gè)一個(gè)類似于C語言的很好的支持面向?qū)ο筇匦缘恼Z言,面向?qū)ο笥袀€(gè)很重要的特性叫繼承,同樣對于UILabel類來說,它是有父類的,也就是UILabel父類支持的屬性,UILabel都是支持的,在UILabel文檔的首頁,我們可以看到UILabel是從UIView繼承的,所以我們可以鏈接到“UIView Class Reference”文檔。

Xcode 4開發(fā)***個(gè)iPhone程序 圖文實(shí)例

從文檔中,我們可以找到2個(gè)重要屬性,用來實(shí)現(xiàn)文字顯示在屏幕正中:

frame: Label的位置和尺寸屬性,類型為CGRect,在本項(xiàng)目需求中,要求顯示在屏幕正中,就需要通過Label控件的frame屬性的size值,結(jié)合主界面的尺寸,計(jì)算出x,y坐標(biāo)值,以保證Label顯示在屏幕正中。

autoresizingMask: 這個(gè)屬性表示控件在其父容器尺寸發(fā)生變化時(shí),它是怎么自動(dòng)調(diào)整其尺寸或上下左右各個(gè)方向邊距的。

支持屏幕旋轉(zhuǎn)

iPhone程序默認(rèn)不支持屏幕旋轉(zhuǎn),那么如何讓界面支持旋轉(zhuǎn)呢?在iOS Dev Center中,可以找到“View Controller Programming Guide for iOS”,在其中的“Custom View Controllers”一章中專門有一節(jié)“Managing a View Controller's Interface Orientation”,說明了如何讓你的iOS界面支持設(shè)備旋轉(zhuǎn):

重寫對應(yīng)的View Controller的“shouldAutorotateToInterfaceOrientation:”方法,在方法中申明支持的方向。

配置對應(yīng)的View Controller中的View的autoresizingMask屬性,以適應(yīng)因?yàn)榻缑嫘D(zhuǎn)導(dǎo)致的布局變化。在本項(xiàng)目中,項(xiàng)目需求中要求設(shè)備在旋轉(zhuǎn)也保證文字居中,利用這個(gè)屬性,可以實(shí)現(xiàn)在界面旋轉(zhuǎn)后,窗體寬度和高度發(fā)生變化時(shí),UILabel還能繼續(xù)居中。

Xcode 4開發(fā)***個(gè)iPhone程序 圖文實(shí)例

小結(jié):Xcode 4開發(fā)***個(gè)iPhone程序 圖文實(shí)例(上)的內(nèi)容介紹完了,請繼續(xù)閱讀 Xcode 4開發(fā)***個(gè)iPhone程序 圖文實(shí)例(下)。

責(zé)任編輯:zhaolei 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2011-07-06 18:31:21

Xcode 4 iPhone 模擬器

2009-06-26 16:07:43

MyEclipse開發(fā)Hibernate程序

2017-10-13 15:59:24

iPhone機(jī)器學(xué)習(xí)iOS

2011-07-07 15:32:07

2013-10-30 22:10:28

Clouda程序

2023-05-19 08:49:58

SQLAlchemy數(shù)據(jù)庫

2012-05-25 15:20:38

XNA

2022-10-17 10:28:05

Web 組件代碼

2024-06-07 08:59:35

2013-01-11 14:45:43

iOS開發(fā)移動(dòng)應(yīng)用iPhone

2011-07-18 15:42:20

Xcode iPhone dylib

2011-06-08 10:24:38

Windows Pho 應(yīng)用程序

2011-06-24 13:38:32

QT 編譯 安裝

2024-03-13 13:53:10

C++程序開發(fā)

2011-06-08 10:01:36

Windows Pho 應(yīng)用程序

2022-11-01 07:23:55

Dockernetcore程序

2011-07-06 17:53:40

iPhone SDK Xcode

2011-04-02 10:08:21

webOS開發(fā)應(yīng)用程序

2010-03-25 16:04:56

Python程序執(zhí)行

2009-03-13 15:23:01

女程序員編程張綺霞
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號