4.ui基礎(chǔ)day03應(yīng)用管理08_第1頁(yè)
4.ui基礎(chǔ)day03應(yīng)用管理08_第2頁(yè)
4.ui基礎(chǔ)day03應(yīng)用管理08_第3頁(yè)
4.ui基礎(chǔ)day03應(yīng)用管理08_第4頁(yè)
4.ui基礎(chǔ)day03應(yīng)用管理08_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、應(yīng)用管理牛亮亮小案例簡(jiǎn)介接下來(lái)做一個(gè)非常綜合的小案例-應(yīng)用管理功能分析以九宮格的形式展示應(yīng)用信息點(diǎn)擊下載按鈕后,做出相應(yīng)的操作步驟分析加載應(yīng)用信息根據(jù)應(yīng)用的個(gè)數(shù)創(chuàng)建對(duì)應(yīng)的view監(jiān)聽下載按鈕點(diǎn)擊掌握UIView的常見屬性和方法九宮格計(jì)算方法字典轉(zhuǎn)模型Xib的使用自定義view(view的封裝)簡(jiǎn)單的MVC作業(yè)點(diǎn)擊下載按鈕后變成不能點(diǎn)擊的“已安裝”中間慢慢彈出提示:已經(jīng)成功安裝xxx,然后提示會(huì)慢慢消失搭建九宮格的步驟明確每一塊用的是什么view明確每個(gè)view之間的父子關(guān)系先嘗試逐個(gè)逐個(gè)添加格子,最后考慮使用for循環(huán)加載app數(shù)據(jù),根據(jù)數(shù)據(jù)長(zhǎng)度創(chuàng)建對(duì)應(yīng)個(gè)數(shù)的格子添加格子內(nèi)部的子控件給格子內(nèi)部

2、的子控件裝配數(shù)據(jù)九宮格算法分析012345678每一列的x值一樣列號(hào)決定x值每一行的y值一樣行號(hào)決定y值xy用模型取代字典的好處使用字典的壞處一般情況下,設(shè)置數(shù)據(jù)和取出數(shù)據(jù)都使用“字符串類型的key”,編寫這些key時(shí),編譯器不會(huì)有任何友善提示,需要手敲dictname = Jack;NSString *name = dictname;手敲字符串key,key容易寫錯(cuò)Key如果寫錯(cuò)了,編譯器不會(huì)有任何警告和報(bào)錯(cuò),造成設(shè)錯(cuò)數(shù)據(jù)或者取錯(cuò)數(shù)據(jù)使用模型的好處所謂模型,其實(shí)就是數(shù)據(jù)模型,專門用來(lái)存放數(shù)據(jù)的對(duì)象,用它來(lái)表示數(shù)據(jù)會(huì)更加專業(yè)模型設(shè)置數(shù)據(jù)和取出數(shù)據(jù)都是通過(guò)它的屬性,屬性名如果寫錯(cuò)了,編譯器會(huì)馬上

3、報(bào)錯(cuò),因此,保證了數(shù)據(jù)的正確性使用模型訪問屬性時(shí),編譯器會(huì)提供一系列的提示,提高編碼效率 = Jack”;NSString *name = ;字典轉(zhuǎn)模型字典轉(zhuǎn)模型的過(guò)程最好封裝在模型內(nèi)部模型應(yīng)該提供一個(gè)可以傳入字典參數(shù)的構(gòu)造方法- (instancetype)initWithDict:(NSDictionary *)dict;+ (instancetype)xxxWithDict:(NSDictionary *)dict;instancetypeinstancetype在類型表示上,跟id一樣,可以表示任何對(duì)象類型instancetype只能用在返回值類型上,不

4、能像id一樣用在參數(shù)類型上instancetype比id多一個(gè)好處:編譯器會(huì)檢測(cè)instancetype的真實(shí)類型字典轉(zhuǎn)模型的過(guò)程PlistNSArray字典數(shù)組NSDictionaryNSDictionaryNSDictionary 模型數(shù)組NSArrayCZAppCZAppCZApp Xib文件的使用Xib文件可以用來(lái)描述某一塊局部的UI界面Xib文件的加載方法1NSArray *objs = NSBundle mainBundle loadNibNamed:”CZAppView owner:nil options:nil;這個(gè)方法會(huì)創(chuàng)建xib中的所有對(duì)象,并且將對(duì)象按順序放到objs數(shù)組

5、中(如果xib如右圖所示,那么objs數(shù)組中依次會(huì)有3個(gè)對(duì)象:1個(gè)UIView、1個(gè)UIButton、1個(gè)UISwitch)方法2bundle參數(shù)可以為nil,默認(rèn)就是main bundleUINib *nib = UINib nibWithNibName:”CZAppView bundle:NSBundle mainBundle;NSArray *objs = nib instantiateWithOwner:nil options:nil;在開發(fā)階段,面向開發(fā)者的是xib文件; 當(dāng)把應(yīng)用裝到手機(jī)上時(shí),xib文件就會(huì)轉(zhuǎn)為nib文件隨意調(diào)整view的尺寸要想隨意調(diào)整xib中view的尺寸,首先

6、要設(shè)置size為FreeformXib和storyboard對(duì)比共同點(diǎn):都用來(lái)描述軟件界面都用Interface Builder工具來(lái)編輯不同點(diǎn)Xib是輕量級(jí)的,用來(lái)描述局部的UI界面Storyboard是重量級(jí)的,用來(lái)描述整個(gè)軟件的多個(gè)界面,并且能展示多個(gè)界面之間的跳轉(zhuǎn)關(guān)系view的封裝如果一個(gè)view內(nèi)部的子控件比較多,一般會(huì)考慮自定義一個(gè)view,把它內(nèi)部子控件的創(chuàng)建屏蔽起來(lái),不讓外界關(guān)心外界可以傳入對(duì)應(yīng)的模型數(shù)據(jù)給view,view拿到模型數(shù)據(jù)后給內(nèi)部的子控件設(shè)置對(duì)應(yīng)的數(shù)據(jù)UILabel的常見設(shè)置property(nonatomic,copy) NSString *text; 顯示的文

7、字property(nonatomic,retain) UIFont *font; 字體property(nonatomic,retain) UIColor *textColor; 文字顏色property(nonatomic) NSTextAlignment textAlignment; 對(duì)齊模式(比如左對(duì)齊、居中對(duì)齊、右對(duì)齊) UIFontUIFont代表字體,常見創(chuàng)建方法有以下幾個(gè):+ (UIFont *)systemFontOfSize:(CGFloat)fontSize; 系統(tǒng)默認(rèn)字體+ (UIFont *)boldSystemFontOfSize:(CGFloat)fontSize

8、; 粗體+ (UIFont *)italicSystemFontOfSize:(CGFloat)fontSize; 斜體UIButton的常見設(shè)置- (void)setTitle:(NSString *)title forState:(UIControlState)state;設(shè)置按鈕的文字- (void)setTitleColor:(UIColor *)color forState:(UIControlState)state;設(shè)置按鈕的文字顏色- (void)setImage:(UIImage *)image forState:(UIControlState)state; 設(shè)置按鈕內(nèi)部的小圖片- (void)setBackgroundImage:(UIImage *)image forState:(UIControlState)state;設(shè)置按鈕的背景圖片設(shè)置按鈕的文字字體(需要拿到按鈕內(nèi)部的label來(lái)設(shè)置)btn.titleLabel.font = UIFont systemFontOfSize:13;UIButton的常見設(shè)置- (NSString *)titleForState:(UIControlState)state; 獲得按鈕的文字- (UIColor *)titleColorForState:(UIControlState)s

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論