蜜臂av日日欢夜夜爽一区_成人一区二区三区在线观看 _日韩国产欧美三级_成人福利视频网站_石原莉奈在线亚洲二区_国产一区二区三区四区五区美女_国产一区二区三区av电影 _91麻豆福利精品推荐_日韩精品1区2区3区_93久久精品日日躁夜夜躁欧美

十年專注于品牌網站建設 十余年專注于網站建設_小程序開發_APP開發,低調、敢創新、有情懷!
南昌百恒網絡微信公眾號 掃一掃關注
小程序
tel-icon全國服務熱線:400-680-9298,0791-88117053
掃一掃關注百恒網絡微信公眾號
掃一掃打開百恒網絡微信小程序

百恒網絡

南昌百恒網絡

iPhone與iPad應用開發的差異

百恒網絡 2017-05-11 6943

對于有些應用,我們會想在iPhone和iPad這兩個平臺上運行,但簡單地把iPhone程序拿過來直接放在iPad上,那是不能運行的。由于它們尺寸不同,應用場景也不同,因此在導航模式上有比較大的差異,一些控件在展現方式上會有很多差別,所以iPad有一些特有的API。下面南昌APP開發公司小編為你詳細講解。

1.概述

屏幕尺寸的不同導致了應用場景的不同,應用場景的不同直接導致了設計和開發的不同。

1.1 應用場景差異

作為iOS開發者,我們應該熟悉iPhone和iPad應用的場景,然后才能開發出好的應用。iPhone是讓用戶一只手使用的設備,因此它適合在等車時拿出來看看天氣、收發郵件、看看周圍有哪些銀行或者飯店,等等。而iPad是兩只手使用的設備,它不太適合處理iPhone用戶的場景。據調查,iPad多數用在家里,用來瀏覽網頁、收發電子郵件、看照片、看視頻、聽音樂、玩電子游戲和看電子書等。作為平板電腦,它比筆記本電腦更輕便、更適合移動使用。

基于應用場景的不同,同樣一款應用在iPhone和iPad上的功能選取和界面布局有著明顯的不同。有些應用只能做成iPhone版本的,有些應用只能做成iPad版本的。與iPhone用戶相比,iPad用戶更期待具有高保真的、藝術品般的、高品質的應用,而絕非簡單地放大iPhone應用的屏幕尺寸。

1.2 設計和開發需注意的問題

在設計和開發時,需要注意的有如下幾個方面:API、導航模式和分層架構設計。

1. API

iPhone和iPad都使用一個操作系統——iOS,因此,它們的API基本上是一樣的,但有一些是iPad專用的,比如UIPopoverController控制器UISplitViewController控制器,其中UIPopoverController控制器用于呈現“漂浮”類型的視圖,UISplitViewController控制器用于將屏幕分欄。這兩個控制器在E-mail應用中都用過。

2. 導航模式

在iPad中,平鋪導航模式和標簽導航模式與iPhone基本一樣,但樹形結構導航模式與iPhone差別比較大。下面我們以E-mail應用為例介紹一下iPad的樹形結構導航模式。

圖1-1是iPhone的E-mail應用界面,它不支持橫屏,導航采用了樹形結構導航模式,新郵件編輯采用模態視圖導航模式。

iPhone的E-mail應用界面

圖1-1 iPhone的E-mail應用界面

iPad橫屏時,其E-mail應用如圖1-2所示。對比可以發現,iPhone版導航分成兩個屏幕,而iPad版采用一個屏幕分成左右兩欄,左欄是用于導航的菜單,占用固定的320點,右欄是詳細內容。

橫屏時iPad的E-mail應用界面

圖1-2 橫屏時iPad的E-mail應用界面

iPad豎屏時,其E-mail應用如圖1-3所示,默認只顯示詳細內容。左邊的導航欄是隱藏的,需要時點擊左上角的“收件箱”按鈕,它會以Popover方式顯示出來。

豎屏時iPad的E-mail應用界面

圖1-3 豎屏時iPad的E-mail應用界面

此外,兩個設備上的模態視圖導航也是不同的。圖1-4是iPhone的模態視圖界面,默認情況下會從屏幕下方滑出,占有整個屏幕。

iPhone模態視圖

圖1-4 iPhone模態視圖

圖1-5是iPad的橫屏模態視圖界面,默認情況下會從屏幕下方滑出,顯示在屏幕中間。圖1-6是iPad的豎屏模態視圖界面,默認情況下會從屏幕下方滑出,占有整個屏幕。

iPad的橫屏模態視圖

圖1-5 iPad的橫屏模態視圖

iPad的豎屏模態視圖

圖1-6 iPad的豎屏模態視圖

3. 分層架構設計

如果一個應用同時要開發iPhone版和iPad版,需要怎么設計它呢? 軟件設計的基本原則是:代碼可復用性和可擴展性。事實上,iPhone和iPad的區別在于表示層(或展示層),其他層是一樣的。例如,你要做一個微博應用,iPhone和iPad版本的差別只在于界面和導航的不同,而網絡通信和數據持久化應該是一樣的,它們應該封裝在一個層之中。因此,iOS應用要考慮分層架構設計問題。

提示 :從軟件系統架構上講,應用系統可以“分層設計”,“層”是具有相似職責功能的一組類的集合。例如,表示層是與用戶交互、展示信息、接收用戶請求的層,由一些UI類組成。在iOS系統中,表示層由UIView及其子類、UIViewController及其子類等構成。

iPad 專用 API

前面提到過,UIPopoverController控制器和UISplitViewController控制器是iPad專用的視圖控制類。

2.1 UIPopoverController 控制器

UIPopoverController是iPad特有的類,不能在iPhone上使用,它負責控制Popover視圖。Popover視圖是一種臨時視圖,它以“漂浮”的形式出現在視圖表面,如圖1-7所示。觸摸Popover視圖的外邊,則關閉視圖。

Popover視圖

圖1-7 Popover視圖

由于Popover視圖不會占用全屏,而且有一個箭頭指向其他視圖或按鈕,所以Popover內容視圖中也常常包含一些控件,類似表單一樣。圖1-8是iPad中Safari瀏覽器的共享選項。

Safari瀏覽器的共享選項

圖1-8 Safari瀏覽器的共享選項

iOS API提供UIPopoverController和UIPopoverControllerDelegate,但沒有提供與UIPopoverController對應的視圖類。UIPopoverController類的常用方法和屬性如下所示。

(1)setContentViewController:animated:。設定內容視圖大小的方法。

(2)presentPopoverFromRect:inView:permittedArrowDirections:animated:。指定一個矩形區域的位置作為錨點來呈現Popover視圖的方法。

(3)presentPopoverFromBarButtonItem:permittedArrowDirections:animated:。指定一個按鈕作為錨點來呈現Popover視圖的方法。

(4)dismissPopoverAnimated:。關閉Popover視圖的方法。

(5)popoverVisible。判斷Popover視圖是否可見。

(6)popoverArrowDirection。判斷Popover視圖箭頭的方向。

Popover視圖可以用故事板連線實現,也可以通過代碼實現。使用故事板實現時,不必編寫任何代碼即可,而使用代碼實現比較靈活。

下面我們通過一個案例介紹一下Popover視圖的用法。在iPad界面的導航欄中,有左右兩個按鈕,如圖1-9所示,點擊左邊的Show按鈕,會彈出Popover視圖(其中可以設置打印機的相關項),這是一個Popover表單視圖,是通過故事板設定的,不用編寫任何代碼。如圖1-10所示,點擊右邊的Coding Show按鈕,會彈出Popover視圖,這是一個選擇列表,通過代碼實現。

Popover視圖案例(點擊Show按鈕)

圖1-9 Popover視圖案例(點擊Show按鈕)

Popover視圖案例(點擊Coding Show按鈕)

圖1-10 Popover視圖案例(點擊Coding Show按鈕)

采用Single View Application模板創建PopoverViewSample工程,其中Devices選擇iPad。打開故事板文件,設計iPad界面。案例中iPad視圖上部是有導航欄的,我們可以將當前視圖控制器嵌入到導航控制器中,也可以直接從對象庫中拖曳一個Navigation Bar (導航欄)到設計界面頂部(與視圖頂部距離為20點,這樣不會遮擋狀態欄),然后再從對象庫拖曳兩個Bar Button Item放到導航欄左右,設計樣式如圖1-11所示;然后,為右按鈕Coding Show定義動作事件連線。

iPad主界面

圖1-11 iPad主界面

從對象庫中拖曳一個新的Table View Controller,將其作為設置打印機的Popover視圖控制器。由于從對象庫拖曳進來的視圖很大,我們需要重新設置它的大小。如圖1-12所示,選中視圖控制器,打開其尺寸檢查器,在Simulated Size下拉列表中選擇Freeform,然后下面會出現Width和Height屬性,我們可以根據自己的情況設置視圖的高和寬。

用于設置打印機的Popover視圖

圖1-12 用于設置打印機的Popover視圖

設置好大小之后,我們還需要設置Popover內容視圖的大小。選擇Table View Controller,打開其屬性檢查器,如圖1-13所示,在Content Size中選中Use Preferred Explicit Size選項。

設置Popover內容視圖的大小

圖1-13 設置Popover內容視圖的大小

設置完成后,我們參考如圖1-14所示設計打印機視圖,它是一個靜態表視圖。

用于設置打印機的Popover視圖

圖1-14 用于設置打印機的Popover視圖

再從對象庫中拖曳一個新的Table View Controller,將其作為顏色選擇Popover視圖控制器,如圖1-15所示,它是一個動態表視圖,接著用尺寸檢查器來調整它們的大小。然后需要設定它的Storyboard ID屬性為SelectViewController。

用于選擇顏色的Popover視圖

圖1-15 用于選擇顏色的Popover視圖

對于設置打印機的Popover視圖,我們不是通過代碼而是在故事板中設計的。選中故事板主界面中的左按鈕Show,按住control鍵拖曳設置打印機的Popover視圖,此時會彈出Segue菜單,如圖1-16所示,從中選擇popoverpresentation(這個選項是iPad特有的)。

Segue菜單

圖1-16 Segue菜單

這時我們也可以先運行一下,看看這樣不寫一行代碼是否可以彈出如圖1-9所示的窗口。

對于選擇顏色的Popover視圖,我們通過代碼來實現。首先要為它創建一個控制器SelectViewController。

然后再看看ViewController的代碼,具體如下:

ViewController代碼一

ViewController代碼二

ViewController代碼三

ViewController代碼四

上述代碼中,第①行的poc是UIPopoverController類型的屬性,它負責保存一個UIPopoverController對象。show:方法用于響應右按鈕Coding Show的點擊事件。

第②行代碼進行了if判斷,目的是防止多次實例化UIPopoverController。在if語句中,第③行代碼用于創建UINavigationController 對象,第④行代碼把這個 UINavigationController 對象作為內容視圖放入到UIPopoverController中,因此UIPopoverController的內容視圖是UINavigationController對象,而不是SelectViewController對象。這樣做的目的是為Popover視圖添加標題。沒有標題的Popover視圖如圖1-17所示。

沒有標題的Popover視圖

圖1-17 沒有標題的Popover視圖

通常,構建沒有標題的Popover視圖的代碼如下,需要把SelectViewController直接作為UIPopoverController的內容視圖就可以了:

UIPopoverController的內容視圖

SelectViewController是顏色選擇視圖控制器,它是一個動態表視圖控制器,其代碼不再介紹。如果需要,讀者可以通過本書源代碼查看全部代碼。

從上面的實現過程可見, Popover 視圖實現起來比較簡單。 UIPopoverController 還有委托協議

UIPopoverControllerDelegate。委托協議UIPopoverControllerDelegate有如下兩個方法。popoverControllerShouldDismissPopover:。控制是否關閉Popover視圖。

popoverControllerDidDismissPopover:。關閉Popover視圖之后觸發。

本文僅限內部技術人員學習交流,不得作于其他商業用途.希望此文對廣大技人員有所幫助。文章出自:南昌APP開發公司-百恒網絡


400-680-9298,0791-88117053
掃一掃關注百恒網絡微信公眾號
掃一掃打開百恒網絡小程序

歡迎您的光顧,我們將竭誠為您服務×

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務 售后服務
 
售后服務 售后服務
 
備案專線 備案專線
 
×
蜜臂av日日欢夜夜爽一区_成人一区二区三区在线观看 _日韩国产欧美三级_成人福利视频网站_石原莉奈在线亚洲二区_国产一区二区三区四区五区美女_国产一区二区三区av电影 _91麻豆福利精品推荐_日韩精品1区2区3区_93久久精品日日躁夜夜躁欧美
视频一区中文字幕国产| 麻豆国产欧美一区二区三区| 91视频91自| 久久99热狠狠色一区二区| 国产精品自拍三区| 日本在线不卡视频一二三区| 国产一区91精品张津瑜| 肉色丝袜一区二区| 成人免费看视频| 久国产精品韩国三级视频| eeuss国产一区二区三区| 久久国产乱子精品免费女| caoporm超碰国产精品| 久久99精品久久久久| 99国产欧美久久久精品| 九九国产精品视频| 日韩不卡一二三区| 成人激情免费网站| 国产精品中文字幕欧美| 久久99国产精品久久99果冻传媒| 91免费看片在线观看| 国产成人免费视频精品含羞草妖精 | 久久电影网电视剧免费观看| 成人97人人超碰人人99| 国产精品一区久久久久| 国产综合色产在线精品| 麻豆国产精品777777在线| 日韩综合小视频| 99精品欧美一区二区三区综合在线| 国产风韵犹存在线视精品| 久久成人久久鬼色| 九色综合狠狠综合久久| 蜜桃精品视频在线| 日av在线不卡| 免费在线欧美视频| 日本欧美在线观看| 青娱乐精品在线视频| 91麻豆国产在线观看| 91在线观看视频| 99久久99久久精品免费观看 | 国产成+人+日韩+欧美+亚洲| 国产一区在线看| 精品一区二区免费视频| 久久国产精品99久久久久久老狼| 男男视频亚洲欧美| 毛片不卡一区二区| 狠狠色综合播放一区二区| 精久久久久久久久久久| 国产综合久久久久影院| 国产精品99久久久久久宅男| 国产成人精品免费网站| 成人精品一区二区三区中文字幕| 成人网在线播放| av一区二区三区在线| 99久久精品国产导航| 爽好久久久欧美精品| 美日韩一区二区| 精品亚洲成a人| 国产sm精品调教视频网站| 粉嫩在线一区二区三区视频| 99re这里都是精品| 久久精品免费观看| 国产大陆精品国产| 91性感美女视频| 蜜臀精品一区二区三区在线观看 | 日韩和欧美的一区| 精品一区二区免费在线观看| 国产成人在线视频免费播放| 99久久精品一区| 老司机午夜精品99久久| 国产成人av电影在线观看| 99国产精品久久久久久久久久 | 国产一区二区三区日韩| 成人av电影免费观看| 秋霞电影网一区二区| 国产一区二区三区在线观看免费视频 | 日韩1区2区日韩1区2区| 国产一区二区日韩精品| 99国内精品久久| 国产一区激情在线| 91欧美一区二区| 国产一二三精品| 91免费精品国自产拍在线不卡| 久久精品国产一区二区三| 国产成人午夜精品5599| 日韩av一区二| 不卡的av中国片| 韩国毛片一区二区三区| 三级不卡在线观看| 国产精品白丝av| 免费在线观看不卡| 成人av午夜影院| 国产一区三区三区| 免费人成精品欧美精品| yourporn久久国产精品| 国产毛片精品视频| 久久成人久久鬼色| 日本va欧美va精品发布| 97超碰欧美中文字幕| 国产盗摄视频一区二区三区| 美女国产一区二区| 91日韩在线专区| 成人免费黄色大片| 国产福利精品一区| 国产乱国产乱300精品| 免费成人av在线播放| 99热这里都是精品| 成人av在线观| 成人性色生活片| 高清成人在线观看| 国产福利一区二区三区视频在线 | 国产91丝袜在线观看| 国产在线麻豆精品观看| 加勒比av一区二区| 久久精品国产免费| 麻豆精品国产传媒mv男同| 日韩不卡在线观看日韩不卡视频| 99精品在线观看视频| 成人av动漫在线| 成人黄色网址在线观看| 成人手机电影网| 成人免费视频app| 成人丝袜视频网| heyzo一本久久综合| 成人99免费视频| 本田岬高潮一区二区三区| 菠萝蜜视频在线观看一区| 成人美女视频在线观看18| 成人国产在线观看| 99精品视频一区二区| 91在线免费视频观看| 日韩中文字幕av电影| 免费在线视频一区| 激情综合网av| 福利91精品一区二区三区| 成人福利视频网站| 天堂在线亚洲视频| 六月丁香婷婷久久| 国产一区二区三区黄视频| 国产成人免费视频网站 | 麻豆成人91精品二区三区| 蜜桃一区二区三区在线| 韩国一区二区三区| 成人一区二区在线观看| 91老司机福利 在线| 麻豆91小视频| 国产999精品久久| 91视频www| 久久69国产一区二区蜜臀| 国产成人精品网址| 日韩在线一二三区| 国产综合色视频| a美女胸又www黄视频久久| 日韩精品视频网站| 国产剧情一区二区三区| fc2成人免费人成在线观看播放| 日韩精品视频网| 国产麻豆精品theporn| gogo大胆日本视频一区| 久久成人av少妇免费| 成人一区二区三区| 麻豆精品久久久| 成人avav在线| 国产一区中文字幕| 天堂成人免费av电影一区| 国产综合色在线| 96av麻豆蜜桃一区二区| 精品午夜久久福利影院 | 白白色 亚洲乱淫| 久久福利资源站| 99精品视频在线观看免费| 精品写真视频在线观看| 91在线播放网址| 国产一区二区三区综合| 日本欧美大码aⅴ在线播放| 国产二区国产一区在线观看| 美女脱光内衣内裤视频久久影院| 成人高清视频在线| 国产精品一区免费在线观看| 日本成人在线不卡视频| 99精品久久只有精品| 国产电影一区在线| 精品一区二区精品| 青娱乐精品视频| av成人免费在线| 懂色中文一区二区在线播放| 黑人巨大精品欧美一区| 日韩国产精品大片| 97se亚洲国产综合自在线观| 懂色av一区二区在线播放| 国内精品第一页| 久久99精品久久久久婷婷| 日韩高清不卡在线| 91麻豆123| 99精品国产视频| 成人av在线资源网站| 国产精品77777| 激情综合色综合久久综合| 麻豆精品蜜桃视频网站| 日韩电影一区二区三区| 日日摸夜夜添夜夜添精品视频| kk眼镜猥琐国模调教系列一区二区| 国产成人高清视频| 国产成人午夜精品5599| 国产91精品露脸国语对白| 国产精品一区二区91| 国产高清精品在线| 国产精品夜夜嗨| 国产成人精品亚洲日本在线桃色| 国产真实乱偷精品视频免| 狠狠色丁香久久婷婷综| 韩国欧美国产一区| 国产精品白丝av| 国产suv精品一区二区883| 成人深夜在线观看| 99久久综合精品| 日韩国产精品大片| 美女mm1313爽爽久久久蜜臀| 国内精品视频666| 国产精品亚洲综合一区在线观看| 国产高清不卡一区| a在线播放不卡| 91麻豆swag| 久久精品国产亚洲aⅴ | 91亚洲永久精品| 青青草伊人久久| 精品一区二区三区日韩| 国产不卡在线播放| av午夜一区麻豆| 日本在线不卡一区| 激情av综合网| 不卡av电影在线播放| 日韩电影免费在线| 国产一区二区不卡| 成人毛片老司机大片| 日韩成人伦理电影在线观看| 精品一区二区在线看| 成人午夜在线视频| 免费亚洲电影在线| 国产成人激情av| 丝瓜av网站精品一区二区| 国产在线视视频有精品| 99久免费精品视频在线观看| 免费人成精品欧美精品| 国产成人av资源| 美日韩一区二区三区| 国产91丝袜在线18| 另类小说一区二区三区| 成人av免费观看| 精品中文字幕一区二区| 99久久国产综合色|国产精品| 麻豆精品视频在线观看视频| 丁香五精品蜜臀久久久久99网站| 日韩—二三区免费观看av| 国产福利一区二区三区在线视频| 91视频com| 丁香激情综合国产| 久久99蜜桃精品| 91免费版在线| 成人免费看视频| 国产一区二区成人久久免费影院 | 国产精品自产自拍| 日韩精品成人一区二区三区| 福利一区二区在线| 国产在线一区观看| 日韩国产欧美视频| av不卡免费在线观看| 国产精品一级片| 精品一区二区三区日韩| 日韩电影在线观看一区| 波多野结衣在线aⅴ中文字幕不卡| 久久91精品久久久久久秒播| 日韩精品每日更新| 99re免费视频精品全部| 丁香五精品蜜臀久久久久99网站| 精品在线免费观看| 免费观看久久久4p| 丝袜亚洲另类欧美综合| a在线欧美一区| 成人精品视频网站| 国产99久久久国产精品| 国产乱码一区二区三区| 国产一区二区在线电影| 国内成人自拍视频| 精品在线免费观看| 久久91精品国产91久久小草| 久久国产麻豆精品| 久久精品国产精品亚洲综合| 美女一区二区三区| 老汉av免费一区二区三区| 卡一卡二国产精品| 精品一区二区三区免费播放| 久久99精品国产麻豆婷婷洗澡| 麻豆视频一区二区| 六月丁香综合在线视频| 久久69国产一区二区蜜臀| 久久精品国产久精国产爱| 美女免费视频一区二区| 蜜桃精品在线观看| 九一九一国产精品| 国产精品一级二级三级| 国产aⅴ精品一区二区三区色成熟| 国产福利不卡视频| 成人午夜电影久久影院| 99视频一区二区| 日韩av电影免费观看高清完整版| 日本视频一区二区三区| 久久成人av少妇免费| 国产激情视频一区二区三区欧美| 国产白丝网站精品污在线入口| 成人久久久精品乱码一区二区三区| 成+人+亚洲+综合天堂| 首页国产欧美久久| 久久国产精品第一页| 国产精品一区在线观看你懂的| 国产成人精品三级麻豆| 99re热这里只有精品免费视频 | 日韩国产高清影视| 精品影视av免费| 成人污视频在线观看| 日韩精品一二三| 国产一区二区不卡| 99国产精品久| 久久er精品视频| 成人激情午夜影院| 奇米色777欧美一区二区| 国产乱码精品一区二区三区五月婷| 成人综合在线观看| 免费观看成人鲁鲁鲁鲁鲁视频| 国产在线精品一区二区三区不卡| 成人激情黄色小说| 久久国产婷婷国产香蕉| 成人深夜视频在线观看| 麻豆中文一区二区| 成人av手机在线观看| 精品一区二区三区视频在线观看 | 成人h动漫精品一区二区| 日本 国产 欧美色综合| 国产成人av电影在线播放| 日韩精品视频网站| 国产91丝袜在线观看| 久久国产精品露脸对白| aaa亚洲精品| 国产精品1024| 蜜桃久久久久久| 99久久久国产精品免费蜜臀| 国产一区二区三区免费观看| 日韩不卡免费视频| 成人动漫视频在线| 国产激情精品久久久第一区二区| 日日摸夜夜添夜夜添国产精品| 丰满少妇久久久久久久| 精彩视频一区二区三区| 日本中文字幕不卡| 99精品热视频| www.在线欧美| 国产不卡视频在线播放| 国产一区二区三区日韩 | 青娱乐精品视频在线| 波多野结衣91| 粉嫩嫩av羞羞动漫久久久| 国产一区二区三区国产| 久久aⅴ国产欧美74aaa| 日本不卡高清视频| 日韩不卡免费视频| 97超碰欧美中文字幕| 不卡的av在线播放| 成人动漫在线一区| 国产91精品精华液一区二区三区| 国产一区二区h| 国产一二精品视频| 国产原创一区二区三区| 国内精品伊人久久久久av影院 | 久久av中文字幕片| 蜜桃视频一区二区三区在线观看| 日韩专区欧美专区| 日韩精品免费专区| 日本不卡视频在线观看| 日韩av在线发布| 美女网站色91| 久久国产免费看| 精品一区二区av| 国产在线不卡一区| 国产福利一区二区三区视频在线 | 国产成人亚洲精品青草天美 | 日韩高清不卡一区二区三区| 三级欧美韩日大片在线看| 日韩在线一区二区三区| 免费在线看成人av| 久久国产综合精品| 国产精品一区久久久久| 国产v综合v亚洲欧| av动漫一区二区| 日本成人在线视频网站| 久久草av在线| 国产99久久久精品| 91在线观看一区二区| 免费不卡在线视频| 国产一区二区精品久久91| 成人在线视频一区二区|