操逼高清无码一区二区三区-操逼国产-操逼无码视频-操逼一区-操操操网站-操操操五月天婷

歡迎來到酷云建站平臺,全網營銷云系統加盟中心!

海量企業網站模板 · 任您選擇

美出特色,精出品質,一切為了企業更好的營銷

隱藏側欄
Beta
轉載

ipd應用中的UISplitViewController控制器

       APP開發     2021-12-16     admin     56     0    

通過昨天的講述我們知道了UIPopoverController控制器和UISplitViewController控制器是iPad專用的視圖控制類,我們著重了解了UIPopoverController控制器,今天徐州APP開發公司小編來講解一下UISplitViewController控制器。

iPad自帶的E-mail應用,它采用UISplitViewController控制器,該控制器是iPad中構建導航模式應用的基礎,可以呈現屏幕分欄視圖的效果。由于iPad要比iPhone大很多,所以不能簡單地采用iPhone的導航模式。圖1是橫屏SplitView視圖,此時屏幕被分割為左右兩個視圖,右側是DetailView,負責顯示詳細信息,左側是MasterView,其中有一個導航列表,用于為右側的DetailView導航。需要說明的是,MasterView的導航列表占有320點的固定大小。在豎屏的情況下,MasterView會隱藏起來,如圖2所示。

圖1 橫屏SplitView視圖

圖2豎屏SplitView視圖

有時候,我們會根據需要在MasterView或DetailView中添加導航欄控制器(UINavigationController),以便在自己的視圖中采用樹形導航模式。圖3是iPad自帶的E-mail應用,左右視圖都帶有導航欄。MasterView內部就采用樹形導航模式,這樣會承載大量的信息而不混亂。

圖3 iPad自帶的E-mail應用

下面我們通過一個案例來熟悉一下UISplitViewController控制器。圖4是橫屏情況的SplitView視圖,顯示了MasterView和DetailView,其中MasterView中有Blue View和Yellow View兩個選擇項目,當選擇其中一個時,右邊的DetailView就會顯示相應的藍色和黃色視圖。點擊Tap按鈕,會彈出AlertView警告框提示為藍色還是黃色視圖。

圖4 SplitView視圖案例

使用Xcode創建工程SplitViewSample,模板采用Single View Application,Devices選擇iPad。刪除由模板生成的ViewController文件,然后用Xcode工具創建DetailViewController、BlueViewController和YellowViewController視圖控制器,它們的父類是UIViewController,不用選擇xib文件。再創建MasterViewController視圖控制器,其父類是UITableViewController,不用選擇xib文件。

打開故事板文件,刪除由模板生成的View Controller,從對象庫中拖曳Split View Controller到設計界面,如圖5所示。

圖5 從對象庫中拖曳Split View Controller到設計界面

從圖5中可見,共生成了4個視圖控制器。默認情況下,MasterView內部采用導航控制器(NavigationController)作為它的根視圖控制器,DetailView采用普通視圖控制器作為它的根視圖控制器。

我們需要設置Split View Controller為初始視圖控制器,選擇場景中的Split View Controller,然后選擇右邊的屬性檢查器,選中View Controller→Is Initial View Controller復選框。

我們需要將自己創建的視圖控制器類與故事板中的View Controller關聯起來。選擇場景中的Master ViewController,打開其標識檢查器,選擇Custom Class→Class下拉列表中的MasterViewController類。再選擇場景中的DetailView Controller,打開標識檢查器,選擇Custom Class→Class下拉列表DetailViewController類。從對象庫中拖曳兩個View Controller到設計界面,按照圖6在每個視圖中放置一個按鈕。

圖6 視圖控制器設計界面

在設計界面中選擇場景中的Blue View Controller,打開其標識檢查器,選擇Custom Class→Class下拉列表中的BlueViewController類,修改StoryboardID為blueViewController。然后再選擇View,將其背景改為藍色。添加一個按鈕到視圖中,并為按鈕添加動作事件。

類似地,選擇Yellow View Controller ,打開其標識檢查器,選擇Custom Class→Class下拉列表中的YellowViewController類,修改Storyboard ID為yellowViewController。然后再選擇View,將其背景改為黃色。添加一個按鈕到視圖中,并為按鈕添加動作事件。

下面南昌APP開發公司小編來看看MasterViewController中的屬性和視圖加載方法viewDidLoad,相關代碼如下:

其中listData屬性用于存放MasterView中的導航列表標題,detailViewController屬性是DetailViewController類型。

在視圖加載方法中,第①行代碼用于創建并初始化listData屬性,第②行代碼用于初始化splitViewController屬性,這里的 self.splitViewController 用于獲得它們所在的分欄視圖控制器。第③行代碼中,UISplitViewController的viewControllers屬性是NSArray集合類型。viewControllers集合中存放兩個視圖控制器,其中第一個元是MasterViewController視圖控制器,第二個元素是DetailViewController視圖控制器。第④行代碼用于獲得最后一個元素(第二個元素)。

MasterViewController是表視圖控制器,它實現的數據源和委托協議方法如下:

這里實現表視圖委托方法tableView:didSelectRowAtIndexPath:的目的是根據選擇的行號更新DetailView,其中updateView:方法是我們在DetailViewController中定義的方法,用于更新視圖。

接下來,我們看看DetailViewController中的屬性和視圖加載方法viewDidLoad,相關代碼如下:

在上述代碼中,屬yellowViewController和blueViewController是DetailView中要展示視圖的控制器。

在viewDidLoad方法中,我們通過Storyboard ID分別創建藍色視圖控制器和黃色視圖控制器,然后通過addSubview:方法把藍色和黃色視圖放入到DetailView中。

在DetailViewController中,視圖方法updateView:的代碼如下:


--結束END--

本文鏈接: http://www.gyzk.com.cn/appkf/2370.html (轉載時請注明來源鏈接)

 
本文標簽: 全部

下班PC閱讀不方便?

手機也可以隨時學習開發

微信關注公眾號“酷云”
"酷云平臺前端開發教學"
每日干貨技術分享
 

×

成為 酷云平臺 代理商!

關注

微信
關注

微信掃一掃
獲取最新優惠信息

酷云平臺公眾號

客服

聯系
客服

很高興為您服務
尊敬的用戶,歡迎您咨詢,我們為新用戶準備了優惠好禮。 咨詢客服

聯系客服:

在線QQ: 3206174

客服電話: 0516-83703228

售前咨詢 售后服務
在線交談 智能小云

工作時間:

周一至周五: 09:00 - 17:00

WAP

手機
訪問

移動端訪問
手機上也能選模板

酷云平臺手機端

主站蜘蛛池模板: 国产一区二区三区小说 | 精品国产免费第一区久久 | 亚洲国产精品一区二区三区久久 | 麻豆91青青| 97精品久久久久中文字 | 免费av片在线观看不卡 | a级毛片在线观看 | 摸丰满大乳奶水ww | 日本一区二区三区午夜观看 | 国产中文字幕在线观看 | 国产精品国产三级国产av主播 | 国产一区二区三区美女图片 | 日本成a人片在线观看影院 日本成本人片视频免费 | 99久久精品免费看国产一区二 | 激情欧美亚洲一区二区三区 | 无码一区二区三区中文字幕 | 精品无码国产自产拍 | 蜜臀久久久久精品久久久 | 无码h黄肉动漫在线观看 | 91精品啪在线观看国产日本 | 欧美日韩在线播放 | 97成人在线视频 | 人人影视在线观看 | 亚洲高清国产第一99久久 | 五月天天天综合精品 | 欧美熟妇另类久久久久久多毛 | 国产超级va在线观看视频 | 亚洲欧美日韩一区超高清 | 亚洲精品成人网线 | 国产一区二区在线视频 | 99久久免费国产香蕉麻豆 | 国产午夜无码福利在线看网站 | 91精品啪在线观看国产91九色 | 日日夜夜永久免费精品影视 | 国产成人精品综合久久久免费观看 | 精品一区二区三区自拍图片区 | 国产精品后 | 欧美a级成人 | 免费人成年短视频在线观看网 | 99视频在线看观免费电影 | 伊人色欲综合 |