成人免费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

2013-10-30 22:10:28

Clouda程序

2012-05-25 15:20:38

XNA

2023-05-19 08:49:58

SQLAlchemy數據庫

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

2011-06-08 10:24:38

Windows Pho 應用程序

2011-06-24 13:38:32

QT 編譯 安裝

2024-03-13 13:53:10

C++程序開發

2022-11-01 07:23:55

Dockernetcore程序

2011-06-08 10:01:36

Windows Pho 應用程序

2011-04-02 10:08:21

webOS開發應用程序

2010-03-25 16:04:56

Python程序執行

2009-03-13 15:23:01

女程序員編程張綺霞
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产日韩欧美 | 久久成人国产精品 | 天天干天天爽 | 欧美成人手机在线 | 久久在视频 | 国产成人亚洲精品自产在线 | 91高清免费观看 | 久久51 | 中文字幕国产视频 | 三级黄色片在线 | 欧美一区二区三区大片 | 欧美黄色精品 | 精品一区二区三区四区外站 | 亚洲欧美日韩国产综合 | 看黄在线 | 亚洲一区在线免费观看 | 啪啪精品 | 超碰免费在线 | 亚洲欧美日韩精品久久亚洲区 | 希岛爱理在线 | 欧美日韩一区二区三区四区 | 日韩欧美在线观看视频网站 | 欧美日韩精品国产 | 久久久久国产一区二区三区不卡 | 国产一区二区精品自拍 | 国产性网| 91在线观看免费视频 | 电影91久久久 | 三级黄色片在线观看 | 免费艹逼视频 | 色婷婷精品 | 欧美男人天堂 | 99久久精品免费看国产四区 | 三级视频网站 | 国产精品美女久久久久aⅴ国产馆 | 欧美日韩在线观看一区 | 2022国产精品 | 欧美精品国产一区二区 | 福利网站导航 | 日日日操| 亚洲国产精品人人爽夜夜爽 |