10、UI界面編程基礎

UI界面編程

- 1.?UIDevice、UIScreen
- 2.?UIView、 UIWindow
- 3.?坐標系
- 4.?CGPoint、CGRect
- 5.?frame & bounds
- 6.?UIColor
- 7.?tag
- 8.?hidden

UIDevice 同樣也是一個類,它提供了一個單例實例來代表當前的設備,在這個實例中你可以得到這個設備的指定名稱、設備的模型以及它的操作系統(tǒng)的名稱和版本。(它對應的是我們的硬件)
??在UIDevice 類中最常用到的是 systemVersion 屬性。

  UIDevice *currentDevice = [UIDevice currentDevice];
  currentDevice.systemVersion

先別看太仔細,先看視頻的內容,再以后好好補全這些UI界面的詳細內容。
UIScreen:

UIScreen *screen = [UIScreen mainScreen];

上面的screen對應的是硬件的屏幕,包括上部的中國電信,信號等。一般我們會通過它取屏幕的寬度、高度和坐標系(UICoodinateSpace)。


UIWindow:
一個應用程序一般只有一個window。我們看在一個應用中只有一個AppDelegate的文件,那么如何訪問AppDelegate 對象呢? 如下:

AppDelegate *appDelegate = [UIApplication sharedApplication].delegate;
// 接下來就可以得到應用的 window
appDelegate.window

上面這個方法很重要,一定需要掌握,以后將會經常用到!
??只有上述這個方法來調用 appDelegate 這個對象,因為當我們運行應用的時候,在 main 函數(shù)中已經幫我們生成了一個 AppDelegate對象 ,所以是不能使用 alloc 再生成一個 appDelegate 對象的。


坐標系:
??在 iOS 中坐標原點位于左上角,向右x增加,向下y增加。在iOS 7 之前,運營商、信號、時間、電池狀態(tài)的表叫做 stateBar 寬20 point。下面的navigationBar 寬度為44 point, 它們是連在一起。那個時期,坐標原點是在 navigationBar 的左下角。但是,在 iOS 7 之后, 坐標原點就是在 window 的左上角位置,這是一個需要注意的地方。不過我們可以通過將 navigationBar 透明度設置為0,這樣坐標原點就會從 navigationBar 的左下角開始計算。

oneNavigationController.navigationBar.translucent = NO;

以上默認是yes, 可以根據(jù)需要設置。


CGPoint 是點,CGRect 是矩形。

CGPoint point = CGPointMake(10,10);
CGRect rect = CGRectMake(10,10,100,200);

frame: 任何一個UIView 都需要制定 frame。在frame 中的 x 坐標 和 y 坐標都是相對于其父視圖。


UIColor : 注意在apple自帶的實用工具中有一個顏色提取器,蠻有趣的。
相對于使用 UIColor 的方法,簡單的我們就不介紹了,現(xiàn)在介紹一種使用 RGB 顏色配比的方法:

UIColor *color = [UIColor colorWithRed:(CGFloat) green:(CGFloat) blue:(CGFloat) alpha:(CGFloat) ];

在 alpha的屬性中 ,1 代表不透明, 0 代表全透明。在設置的時候,因為最大值是1,所以比如紅色你想設置60,實際輸入必須是: 60 / 255.0 。


tag: 它是一個整型的值,它是 UIView 之中的一個屬性,例如我們可以給 button設置一個 tag 值。同樣的,hidden 也是它的一個屬性,設置為 yes 的話我們就看不見這個 UIView 了(默認值是 NO):

pushButton.tag = 100;
presentButton.hidden = YES;

仍然需要修改和補充, 未完待續(xù)!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • //準備工作 1.刪除Main 2.ARC->MRC(YES->No) 3.刪除文件(ViewConTroller...
    愛吃芒果的淼小豬閱讀 405評論 1 1
  • 初識iOS APP開發(fā)#### 在iOS APP開發(fā)中, main函數(shù)仍是程序的入口和出口, 但main函數(shù)不需要...
    DeanYan閱讀 6,335評論 0 3
  • *7月8日上午 N:Block :跟一個函數(shù)塊差不多,會對里面所有的內容的引用計數(shù)+1,想要解決就用__block...
    炙冰閱讀 2,553評論 1 14
  • 我最羨慕的是 一個樂意表達并能用直白語言表達自己的人 傷心憤怒愉快蔑視 這一切真實的感受都能換成 明確簡單的行為和...
    小余兒o閱讀 200評論 0 0
  • 這個秋天有很多的冰冷,這個秋夜?jié)M眼是紅樹,滿眼寂寂,又聽得清角吹寒,嗚嗚咽咽,空空蕩蕩,端的是素秋難敵,風雨愁煞人...
    墨子藝閱讀 276評論 0 1