您好,登錄后才能下訂單哦!
1.UINavigationController (導(dǎo)航控制器)
1.1 是什么?
繼承自UIViewController,依然是一種控制器,
這種控制器沒有具體的view,是管理控制器的控制器
1.2 優(yōu)點?
能夠管理和控制VC的走向,比present方式更清晰
有層級關(guān)系的 push... pop...
沒有層級關(guān)系的 present... dismiss...
1.3 如何使用?
step1:創(chuàng)建UINavigationController的實例
step2:創(chuàng)建一個具體的vc實例,并將這個vc設(shè)置為UINavigationController的根視圖控制器
step3:設(shè)置navigationController為window的根視圖控制器
step4:想推出新的vc時,可以使用pushViewController的方法
step5:想回退到上一個vc時,可以不寫代碼;或者是使用popViewController的方法
1.4 內(nèi)部原理
1)navi內(nèi)部有一個可以存儲多個vc的數(shù)組,就是self.navigationController.viewControllers屬性;并且這個數(shù)組使用“棧”的方式來管理數(shù)據(jù)?!皸!钡奶攸c:先進后出,后進先出。
2)navi必須 有一個根視圖控制器作為第一個展示的vc
3)push出一個新的vc時,就是往棧屬性中入棧一個vc對象,新的vc入棧之前顯示的那個vc不會被釋放
4)pop現(xiàn)有vc時,才是將這個vc釋放掉
5)不能pop根vc
1.5 配置導(dǎo)航欄
訪問導(dǎo)航欄:self.navigationItem
導(dǎo)航欄包含三部分:
1)中間的title
self.title= @“”;
2)左側(cè)的按鈕區(qū)域
self.navigationItem.leftBarButtonItem/s
3)右側(cè)的按鈕區(qū)域
self.navigationItem.rightBarButtonItem/s
4)按鈕的類型:UIBarButtonItem類型
可以使用initWithTitle。。方法創(chuàng)建自定義
文本內(nèi)容的按鈕
可以使用initWithBarButtonSystemItem…方法創(chuàng)建系統(tǒng)定義好的,有固定外觀的按鈕
1.6 配置工具欄
訪問工具欄:self.toolBarItems
工具欄默認是隱藏的,修改以下屬性可以顯示
self.navigationController.toolbarHidden = NO;
工具欄中加載的也是UIBarButtonItem類型的按鈕
1.7 特效按鈕
UIBarButtonSystemItemFixedSpace木棍效果:距離是固定的。通過修改barButton的width屬性來調(diào)整按鈕的寬度
UIBarButtonSystemItemFlexibleSpace彈簧效果:距離是可變的,可以根據(jù)外在的寬度調(diào)整按鈕所占的寬度
1.8 推出新VC時,設(shè)置底部bar區(qū)域隱藏
bvc.hidesBottomBarWhenPushed = YES;
1.9 導(dǎo)航控制器可以設(shè)置的屬性的作用于范圍
屬性:
.title
.navigationItem.leftBarButtonItem/s
.navigationItem.rightBarButtonItem/s
.toolbarItems
以上四個屬性的設(shè)置只負責(zé)當(dāng)前所屬的vc
屬性:
.navigationController.toolbarHidden
設(shè)置后,針對導(dǎo)航控制器管理的所有vc都生效
1.10 問:在不同的vc中都可以訪問self.navigationController,那么是同一個導(dǎo)航控制器嗎?
答:是
2. UIImageView
數(shù)據(jù)類型:NSString —>UILabel 顯示
UIImage—>UIImageView 顯示
2.1 如何使用
屬性:
contentMode用于設(shè)置內(nèi)容顯示的方式
UIViewContentModeScaleToFill:
修改寬高比,適應(yīng)p_w_picpathView的區(qū)域大小,圖片會被拉伸,不留白邊
UIViewContentModeScaleAspectFit:
維持寬高比不變的情況下,將整張圖片可見,由于圖片的寬高比和設(shè)置的p_w_picpathView的frame的寬高比如果不協(xié)調(diào)的話,可能會留白邊兒。
UIViewContentModeScaleAspectFill:
保持寬高比不變的情況下,將p_w_picpathView所占的區(qū)域填滿,所以只會顯示圖片的一部分,不會留白
【Demo2_UIImageView】
屬性:
layer.cornerRadius設(shè)置圓角的半徑
layer.masksToBounds開啟按邊緣遮罩
layer.borderWidth 設(shè)置邊框?qū)挾?/strong>
layer.borderColor 設(shè)置邊框顏色
3.UIScrollView
3.1 作用:
在有限的區(qū)域內(nèi),顯示更多的數(shù)據(jù)或圖片
3.2 本質(zhì):
管理view的view,scrollView本身沒有任何的外觀,依靠添加到scrollView中的其他視圖來完成界面的顯示
3.3 如何使用
重要的屬性:
.frame 設(shè)置scrollView用多大的窗口來顯示內(nèi)容
.contentSize 設(shè)置了可滾動的區(qū)域的大小
.contentOffset 設(shè)置frame定點與內(nèi)容的左頂點的偏移坐標(biāo)
.contentInset 設(shè)置內(nèi)容與邊界之間的上、左、下、右的距離
其他屬性:
.bounces 是否可以彈跳
.showsHorizontalScrollIndicator 是否顯示水平方向滾動條
.showsVerticalScrollIndicator 是否顯示垂直方向滾動條
.indicatorStyle
3.4如何實現(xiàn)滾動視圖內(nèi)容的縮放
step1:設(shè)置滾動內(nèi)容縮放的最大比率
step2:設(shè)置滾動內(nèi)容縮放的最小比率
step3:回答問題,說明scrollView里面的哪個子視圖需要縮放
======================================================================================
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。