IPAD
一疆柔、iPad開發(fā)
1. 了解什么是iPad
2. 掌握iphone與ipad的開發(fā)時(shí)區(qū)別(尺寸、點(diǎn)密末、排版握爷、鍵盤、API严里、屏幕方向)
3. 掌握UIPopoverController的使用
案例:
a. 導(dǎo)航欄左邊添加leftBarButtonItem按鈕
創(chuàng)建MenuViewController控制器
***重點(diǎn)內(nèi)容***
1>設(shè)置內(nèi)容控制器(并需先創(chuàng)建內(nèi)容控制器)
//強(qiáng)調(diào)UIPopover不是繼承UIViewController新啼,也就不具備顯示功能,要設(shè)置內(nèi)容刹碾,使用initWithContentViewController設(shè)置內(nèi)容
- (id)initWithContentViewController:(UIViewController *)viewController;
@property (nonatomic, retain) UIViewController *contentViewController;
- (void)setContentViewController:(UIViewController *)viewController animated:(BOOL)animated;
2>設(shè)置尺寸
設(shè)置popView的大小(默認(rèn)控制器有多大就顯示多大)(120, 44 * 3)
pc的方法popoverContentSize
vc的方法
self.preferredContentSize
self.contentSizeForViewInPopover /*ios7過(guò)時(shí)*/
3>設(shè)置在什么地方顯示
調(diào)用方法
//彈出UIPopoverController的方法(一)
*? @param item? ? ? ? ? ? 圍繞著哪個(gè)UIBarButtonItem顯示
*? @param arrowDirections 箭頭的方向
*? @param animated? ? ? ? 是否通過(guò)動(dòng)畫顯示出來(lái)
- (void)presentPopoverFromBarButtonItem:(UIBarButtonItem *)item permittedArrowDirections:(UIPopoverArrowDirection)arrowDirections animated:(BOOL)animated;
b. 導(dǎo)航控制器titleView添加個(gè)按鈕燥撞,點(diǎn)擊,彈出一個(gè)控制器,然后這個(gè)控制器再用導(dǎo)航控制器包裝物舒,顯示二級(jí)控制器
***重點(diǎn)內(nèi)容***
1>調(diào)用方法(畫圖講解rect與intView的關(guān)系)
// 彈出UIPopoverController
*? @param rect? ? ? ? ? ? 指定箭頭所指區(qū)域的矩形框范圍(位置和尺寸)
*? @param view? ? ? ? ? ? rect參數(shù)是以view的左上角為坐標(biāo)原點(diǎn)(0辆布,0)
*? @param arrowDirections 箭頭的方向
*? @param animated? ? ? ? 是否通過(guò)動(dòng)畫顯示出來(lái)
- (void)presentPopoverFromRect:(CGRect)rect inView:(UIView *)view permittedArrowDirections:(UIPopoverArrowDirection)arrowDirections animated:(BOOL)animated;
2>控制器內(nèi),有自己的邏輯結(jié)構(gòu)(和正常控制器一樣可以跳轉(zhuǎn)返回等)
c. 掌握顏色的選取
1>中間添加一個(gè)button
2>創(chuàng)建ColorViewController(xib)
self.preferredContentSize = CGSizeMake(225, 250);
3>監(jiān)聽touchBegin 方法 獲取點(diǎn)茶鉴,再獲取顏色锋玲,然后代理通知主控制器
4>設(shè)置btn的背影顏色
5>設(shè)置顏色后讓popView消失,[_colorPickerPopover dismissPopoverAnimated:YES]
/* 注:
*1> 強(qiáng)調(diào)UIPopover不是繼承UIViewController涵叮,也就不具備顯示功能惭蹂,要設(shè)置內(nèi)容,使用initWithContentViewController設(shè)置內(nèi)容
*2> 講解directions幾個(gè)枚舉的意思割粮,建議使用UIPopoverArrowDirectionAny ,
*3> 左右方向不太好看盾碗,建議不用
*/
/*補(bǔ)充*/
1>passthroughViews 在 popView顯示的情況,周邊哪些控制可以響應(yīng)
2>如果要在iphone上實(shí)現(xiàn)popView的效果舀瓢,可以參考code4app
4.掌握UISplitViewController的使用
a.MenuViewController
1>masterViewController(主要控制器)
2>負(fù)責(zé)展示主要的菜單內(nèi)容
詳細(xì)內(nèi)容(重點(diǎn))
加載數(shù)據(jù)
*普通加載數(shù)據(jù)的方式
// 1.加載plist文件
// 2.將Plist文件的數(shù)據(jù)轉(zhuǎn)化成數(shù)組
// 3.將數(shù)組里面所有的字典轉(zhuǎn)化成模型
// 4.將所有的模型對(duì)象放入_foodTypes
*通過(guò)第三方框架(MJ字典轉(zhuǎn)模型)
// MJ的字典轉(zhuǎn)模型框架
/*
1.Filename:文件名,只傳入名稱即可
2.File:文件,文件路徑+文件名.
*/
_foodTypes = [FoodType objectArrayWithFilename:@"food_types.plist"];
NSString *file = [[NSBundle mainBundle] pathForResource:@"food_types.plist" ofType:nil];
_foodTypes = [FoodType objectArrayWithFile:file];
b.DetailViewController
1>detailViewController(詳情控制器)
2>負(fù)責(zé)展示詳細(xì)內(nèi)容
*重點(diǎn)一
ipad中的模態(tài)窗口modal比iphone多了些功能
>呈現(xiàn)樣式modalPresentationStyle
//? ? UIModalPresentationFullScreen = 0,//全屏
//? ? UIModalPresentationPageSheet,寬度768 高度應(yīng)屏幕高度而定
//? ? UIModalPresentationFormSheet,占距屏幕中間一小部分
//? ? UIModalPresentationCurrentContext,跟隨父控件大小
>過(guò)渡樣式modalTransitionStyle
//UIModalTransitionStyleCoverVertical = 0,由頂部往上推
//UIModalTransitionStyleFlipHorizontal,水平翻轉(zhuǎn)
//UIModalTransitionStyleCrossDissolve,漸變
//UIModalTransitionStylePartialCurl 翻頁(yè) 呈現(xiàn)樣式必需為全屏
*重點(diǎn)二
引用文件
/*
../css/recipe.css
..:上一個(gè)文件夾
css:上一個(gè)文件夾里面的css文件
recipe.css:上一個(gè)文件夾里面的css文件夾里面的recipe.css文件
*/
- 是否在沙盒創(chuàng)建真實(shí)文件夾
- 1.如果選上,表示把拖進(jìn)來(lái)的資源,同時(shí)復(fù)制一份到我們的項(xiàng)目中
- 2.添加文件夾
? ? ? 2.1選擇第一個(gè)表示:只創(chuàng)建影片上的文件夾
? ? ? 2.2選擇第二個(gè)表示:創(chuàng)建硬盤上文件夾,同事創(chuàng)建沙盒中的文件夾
- 3.如果選上,表示將資源加到我們的項(xiàng)目沙盒中