關(guān)情紙尾---UIKit基礎-控件基本屬性

最近學習做一些小項目的的思路解藻,也了解和掌握了一些新的知識。越深入的學葡盗,越覺得學編程不容易螟左,那些大神,真心讓我佩服。

一胶背、UIButton 有三種狀態(tài)

normal(普通狀態(tài))
    默認情況 對應的枚舉常量:UIControlStateNormal
highlighted(高亮狀態(tài))
    按鈕被按下去的時候(手指還未松開) 對應的枚舉常量:UIControlStateHighlighted
disabled(失效狀態(tài)巷嚣,不可用狀態(tài))
    如果enabled屬性為NO,就是處于disable狀態(tài)钳吟,代表按鈕不可以被點擊 對應的枚舉常量:UIControlStateDisabled

二廷粒、UILable的基本設置

1、要想讓UILabel自動換行砸抛,設置Lines為0即可
2评雌、讓UILabel的文字居中顯示

<p>

三树枫、UIButton和UIImageView的比較

相同點:
  都能顯示圖片
不同點:
  UIButton默認情況就能監(jiān)聽點擊事件直焙,而UIImageView默認情況下不能

UIButton可以在不同狀態(tài)下顯示不同的圖片
UIButton既能顯示文字,又能顯示圖片
如何選擇 UIButton?
  需要顯示圖片砂轻,點擊圖片后需要做一些特定的操作
UIImageView:僅僅需要顯示圖片奔誓,點擊圖片后不需要做任何事情

<p>

四、NSArray和NSDictionary的使用

1搔涝、當圖片內(nèi)容非常多時厨喂,“根據(jù)index來設置內(nèi)容”的代碼就不具備擴展性,要經(jīng)常改動 為了改變現(xiàn)狀庄呈,可以考慮將圖片數(shù)據(jù)保存到一個數(shù)組中蜕煌,數(shù)組中有序地放著很多字典,一個字典代表一張圖片數(shù)據(jù)诬留,包含了圖片名斜纪、圖片描述 @property (strong, nonatomic) NSArray *images;
2、由于只需要初始化一次圖片數(shù)據(jù)文兑,因此放在get方法中初始化
3盒刚、將屬性放在get方法中初始化的方式,稱為“懶加載”\”延遲加載”

<p>

五绿贞、什么是plist文件

直接將數(shù)據(jù)直接寫在代碼里面因块,不是一種合理的做法。
如果數(shù)據(jù)經(jīng)常改籍铁,就要經(jīng)常翻開對應的代碼進行修改涡上,造成代碼擴展性低
 
因此,可以考慮將經(jīng)常變的數(shù)據(jù)放在文件中進行存儲拒名,
程序啟動后從文件中讀取最新的數(shù)據(jù)吩愧。
如果要變動數(shù)據(jù),直接修改數(shù)據(jù)文件即可靡狞,不用修改代碼

一般可以使用屬性列表文件存儲NSArray或者NSDictionary之類的數(shù)據(jù)
這種屬性列表文件的擴展名是plist耻警,因此也成為“Plist文件”
 創(chuàng)建plist文件


<p>

六、解析 image.plist

獲得Plist文件的全路徑 
NSBundle *bundle = [NSBundle mainBundle];
NSString *path = [bundle pathForResource:@"imageData" ofType:@"plist"];

加載plist文件 _images = [NSArray arrayWithContentsOfFile:path];
- (NSArray *)images{
    if (_images == nil) {
        NSBundle *bundle = [NSBundle mainBundle];
        NSString *path = [bundle pathForResource:@"imageData" ofType:@"plist"];
        _images = [NSArray arrayWithContentsOfFile:path];
    }
        return _images;
  }

<p>

七、UIView 的常見屬性

以父控件的左上角為坐標原點
@property(nonatomic) CGRect frame;控件所在矩形框在父控件中的位置和尺寸

以自己左上角為坐標原點甘穿,所以bounds的x\y一般為0
@property(nonatomic) CGRect bounds; 控件所在矩形框的位置和尺寸

以父控件的左上角為坐標原點
@property(nonatomic) CGPoint center; 控件中點的位置

<p>
<p>

八腮恩、UIImage的2種加載方式

方式一:有緩存(圖片所占用的內(nèi)存會一直停留在程序中)
    + (UIImage *)imageNamed:(NSString *)name;
    name是圖片的文件名

方式二:無緩存(圖片所占用的內(nèi)存會在一些特定操作后被清除)
    + (UIImage *)imageWithContentsOfFile:(NSString *)path
    -(id)initWithContentsOfFile:(NSString *)path;
    path是圖片的全路徑

<p>
<p>

九、用模型取代字典

1温兼、使用字典的壞處 
    一般情況下秸滴,設置數(shù)據(jù)和取出數(shù)據(jù)都使用“字符串類型的key”,
    編寫這些key時募判,編譯器不會有任何友善提示
    需要手敲 dict[@"name"] = @"Jack";NSString *name = dict[@"name"];
    手敲字符串key荡含,key容易寫錯 Key如果寫錯了,編譯器不會有任何警告和報錯届垫,
    造成設錯數(shù)據(jù)或者取錯數(shù)據(jù)

2释液、使用模型的好處
    所謂模型,其實就是數(shù)據(jù)模型装处,專門用來存放數(shù)據(jù)的對象误债,
    用它來表示數(shù)據(jù)會更加專業(yè) 模型設置數(shù)據(jù)和取出數(shù)據(jù)都是通過它的屬性,
    屬性名如果寫錯了妄迁,編譯器會馬上報錯寝蹈,
    因此,保證了數(shù)據(jù)的正確性 使用模型訪問屬性時登淘,
    編譯器會提供一系列的提示箫老,提高編碼效率

3、注意
    字典轉(zhuǎn)模型的過程最好封裝在模型內(nèi)部 模型應該提供一個可以傳入字典參數(shù)的構(gòu)造方法
    - (instancetype)initWithDict:(NSDictionary *)dict;
    + (instancetype)xxxWithDict:(NSDictionary *)dict;

十黔州、xib文件的介紹和使用

1耍鬓、Xib文件可以用來描述某一塊局部的UI界面
2、Xib文件的加載
    方法1: 
        NSArray *objs = [[NSBundle mainBundle] loadNibNamed:@"TUAppView" owner:nil options:nil];
        這個方法會創(chuàng)建xib中的所有對象辩撑,并且將對象按順序放到objs數(shù)組中
    方法2:
        bundle參數(shù)可以為nil界斜,
        默認就是main bundle UINib *nib = [UINib nibWithNibName:@"MJAppView"
                                               bundle:[NSBundle mainBundle]]; 
        NSArray *objs = [nib instantiateWithOwner:nil options:nil];
        在開發(fā)階段,面向開發(fā)者的是xib文件; 當把應用裝到手機上時,xib文件就會轉(zhuǎn)為nib文件
3、要想隨意調(diào)整xib中view的尺寸合冀,首先要設置size為Freeform
4各薇、Xib和storyboard對比
共同點:
    都用來描述軟件界面, 都用Interface Builder工具來編輯
不同點: 
    Xib是輕量級的君躺,用來描述局部的UI界面峭判。
    Storyboard是重量級的,用來描述整個軟件的多個界面棕叫,并且能展示多個界面之間的跳轉(zhuǎn)關(guān)系

posted @ 2015-07-30 18:10

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末林螃,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子俺泣,更是在濱河造成了極大的恐慌疗认,老刑警劉巖完残,帶你破解...
    沈念sama閱讀 211,290評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異横漏,居然都是意外死亡谨设,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評論 2 385
  • 文/潘曉璐 我一進店門缎浇,熙熙樓的掌柜王于貴愁眉苦臉地迎上來扎拣,“玉大人,你說我怎么就攤上這事素跺《叮” “怎么了?”我有些...
    開封第一講書人閱讀 156,872評論 0 347
  • 文/不壞的土叔 我叫張陵指厌,是天一觀的道長刊愚。 經(jīng)常有香客問我,道長仑乌,這世上最難降的妖魔是什么百拓? 我笑而不...
    開封第一講書人閱讀 56,415評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮晰甚,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘决帖。我一直安慰自己厕九,他們只是感情好,可當我...
    茶點故事閱讀 65,453評論 6 385
  • 文/花漫 我一把揭開白布地回。 她就那樣靜靜地躺著扁远,像睡著了一般。 火紅的嫁衣襯著肌膚如雪刻像。 梳的紋絲不亂的頭發(fā)上畅买,一...
    開封第一講書人閱讀 49,784評論 1 290
  • 那天,我揣著相機與錄音细睡,去河邊找鬼谷羞。 笑死,一個胖子當著我的面吹牛溜徙,可吹牛的內(nèi)容都是我干的湃缎。 我是一名探鬼主播,決...
    沈念sama閱讀 38,927評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼蠢壹,長吁一口氣:“原來是場噩夢啊……” “哼嗓违!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起图贸,我...
    開封第一講書人閱讀 37,691評論 0 266
  • 序言:老撾萬榮一對情侶失蹤蹂季,失蹤者是張志新(化名)和其女友劉穎冕广,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體偿洁,經(jīng)...
    沈念sama閱讀 44,137評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡佳窑,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,472評論 2 326
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了父能。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片神凑。...
    茶點故事閱讀 38,622評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖何吝,靈堂內(nèi)的尸體忽然破棺而出溉委,到底是詐尸還是另有隱情,我是刑警寧澤爱榕,帶...
    沈念sama閱讀 34,289評論 4 329
  • 正文 年R本政府宣布瓣喊,位于F島的核電站,受9級特大地震影響黔酥,放射性物質(zhì)發(fā)生泄漏藻三。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,887評論 3 312
  • 文/蒙蒙 一跪者、第九天 我趴在偏房一處隱蔽的房頂上張望棵帽。 院中可真熱鬧,春花似錦渣玲、人聲如沸逗概。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽逾苫。三九已至,卻和暖如春枚钓,著一層夾襖步出監(jiān)牢的瞬間铅搓,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工搀捷, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留星掰,地道東北人。 一個月前我還...
    沈念sama閱讀 46,316評論 2 360
  • 正文 我出身青樓指煎,卻偏偏與公主長得像蹋偏,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子至壤,可洞房花燭夜當晚...
    茶點故事閱讀 43,490評論 2 348

推薦閱讀更多精彩內(nèi)容

  • *7月8日上午 N:Block :跟一個函數(shù)塊差不多威始,會對里面所有的內(nèi)容的引用計數(shù)+1,想要解決就用__block...
    炙冰閱讀 2,477評論 1 14
  • 1,Search Bar 怎樣去掉背景的顏色(storyboard里只能設置background顏色像街,可是發(fā)現(xiàn)cl...
    以德扶人閱讀 2,333評論 2 50
  • *面試心聲:其實這些題本人都沒怎么背,但是在上海 兩周半 面了大約10家 收到差不多3個offer,總結(jié)起來就是把...
    Dove_iOS閱讀 27,130評論 30 470
  • iOS需要學習的內(nèi)容 UI 基礎控件: UIButton黎棠、UIImageView晋渺、UILable、UIView脓斩、U...
    cuptea閱讀 374評論 1 0
  • 每天吃著零食木西,看著微信,看著微博随静,發(fā)發(fā)朋友圈八千,和朋友煲電話粥,有志青年們燎猛,玩王者恋捆,看看言情小說,追追韓劇重绷,了解了解...
    愛吃紅薯的豬嘍嘍閱讀 195評論 0 2