成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Xcode 4開發第一個iPhone程序 圖文實例(上)

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

Xcode 4開發***個iPhone程序“Hello World”是本文要介紹的內容,分為上下篇為友們介紹。

項目要求

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

需求分析

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

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

要求文字顯示在屏幕正中

支持設備旋轉,并且無論設備如何旋轉,文字都還是顯示在屏幕正中

根據這些需求,我們將從簡單到復雜,逐步來實現,分成2步來實現:

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

支持設備旋轉,并且保證旋轉后文字還是居中狀態

產品設計

iPhone4之前的屏幕是320x480,到iPhone4的時候,支持了高清屏,屏幕分辨率變成了640x960。iPhone支持四個方向的旋轉的,橫屏和豎屏表現略有差異,因為項目需求要求支持屏幕旋轉,所以針對橫屏和豎屏,界面表現有所差異,簡單畫一下原型設計圖如下:

Xcode 4開發***個iPhone程序 圖文實例 

Xcode 4開發***個iPhone程序 圖文實例

系統分析和設計

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

Xcode 4開發***個iPhone程序 圖文實例

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

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

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

Xcode 4開發***個iPhone程序 圖文實例

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

Xcode 4開發***個iPhone程序 圖文實例

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

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

textAlignment: 文字在Label內的對其方式,類型為UITextAlignment枚舉,在本項目需求中,要求文字在屏幕正中顯示,對應的屬性值為UITextAlignmentCenter。

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

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

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

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

讓文字顯示在屏幕正中心

要讓文字顯示在屏幕正中心,我們要優先考慮設置UILabel相關屬性達到目的的方式,如果沒有UILabel相關屬性支持,那么我們就必須根據UILabel占的大小和屏幕大小來計算它應該擺放的坐標,從而實現讓文字顯示在屏幕正中心。在UILabel的文檔中,沒有發現有屬性設置它的坐標,也沒有設置對其的屬性,這是不是代表UILabel不支持呢?不要忽略一個問題,iOS所用的編程語言是Objective-C,這個一個類似于C語言的很好的支持面向對象特性的語言,面向對象有個很重要的特性叫繼承,同樣對于UILabel類來說,它是有父類的,也就是UILabel父類支持的屬性,UILabel都是支持的,在UILabel文檔的首頁,我們可以看到UILabel是從UIView繼承的,所以我們可以鏈接到“UIView Class Reference”文檔。

Xcode 4開發***個iPhone程序 圖文實例

從文檔中,我們可以找到2個重要屬性,用來實現文字顯示在屏幕正中:

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

autoresizingMask: 這個屬性表示控件在其父容器尺寸發生變化時,它是怎么自動調整其尺寸或上下左右各個方向邊距的。

支持屏幕旋轉

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

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

配置對應的View Controller中的View的autoresizingMask屬性,以適應因為界面旋轉導致的布局變化。在本項目中,項目需求中要求設備在旋轉也保證文字居中,利用這個屬性,可以實現在界面旋轉后,窗體寬度和高度發生變化時,UILabel還能繼續居中。

Xcode 4開發***個iPhone程序 圖文實例

小結:Xcode 4開發***個iPhone程序 圖文實例(上)的內容介紹完了,請繼續閱讀 Xcode 4開發***個iPhone程序 圖文實例(下)

責任編輯:zhaolei 來源: 互聯網
相關推薦

2011-07-06 18:31:21

Xcode 4 iPhone 模擬器

2009-06-26 16:07:43

MyEclipse開發Hibernate程序

2017-10-13 15:59:24

iPhone機器學習iOS

2011-07-07 15:32:07

2012-05-25 15:20:38

XNA

2023-05-19 08:49:58

SQLAlchemy數據庫

2013-10-30 22:10:28

Clouda程序

2022-10-17 10:28:05

Web 組件代碼

2024-06-07 08:59:35

2013-01-11 14:45:43

iOS開發移動應用iPhone

2011-07-18 15:42:20

Xcode iPhone dylib

2011-07-06 17:53:40

iPhone SDK Xcode

2022-11-01 07:23:55

Dockernetcore程序

2011-06-08 10:01:36

Windows Pho 應用程序

2024-03-13 13:53:10

C++程序開發

2011-06-08 10:24:38

Windows Pho 應用程序

2011-06-24 13:38:32

QT 編譯 安裝

2011-04-02 10:08:21

webOS開發應用程序

2010-07-30 14:58:06

Flex應用

2011-03-21 14:24:13

Debian 6
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品欧美一区二区三区久久久 | 欧美视频精品 | 国产日韩欧美一区二区 | 中文字幕av一区二区三区 | 黄色三级在线播放 | 精品av天堂毛片久久久借种 | 韩日在线| 综合久久99| 亚洲一级av毛片 | 日韩精品久久一区 | 欧美精品一二区 | 六月色婷| 亚洲国产成人一区二区 | 三级特黄特色视频 | 成人免费淫片aa视频免费 | 欧美一级免费 | 99久久精品国产一区二区三区 | 91精品一区二区三区久久久久 | 蜜桃视频在线观看免费视频网站www | 国产视频一区二区在线观看 | 亚洲一区二区视频在线观看 | 久久亚洲一区二区 | 国产精品美女久久久久久免费 | 欧美在线小视频 | 青娱乐国产 | 欧美精品成人一区二区三区四区 | 久久久妇女国产精品影视 | 亚洲福利视频一区二区 | 欧美激情啪啪 | 国产在线视频一区二区 | 国产精品视频入口 | 国精日本亚洲欧州国产中文久久 | 97免费视频在线观看 | 久久国产精品久久久久久 | 国产黄a一级 | 超碰导航 | 午夜精品久久久久久久久久久久 | 日本成人在线网址 | 日本欧美在线观看视频 | 国产中文字幕在线 | 琪琪午夜伦伦电影福利片 |