與iOS整合指的是在當前平臺上給用戶提供一種舒適的、賓至如歸般的體驗當然這并不意味著我們要把每一個應用做的和內(nèi)置應用一模一樣。
最好的與iOS整合的方式便是深刻地了解iOS的主題與核心——這一部分在上文為iOS而設計Designing for iOS部分中已有詳細描述并尋求出如何在你的應用中融合與表達這種主題。當你這么做的時候遵循本章中的指引可以幫助你為你的用戶提供他們想要的體驗。
盡可能使用UIkit提供的標準UI元素是一個好主意。多使用標準元素而非自定義元素你與你的用戶都將受益
想要充分地利用標準UI元素的優(yōu)點有一些關鍵點需要特別注意
嚴格遵循每個**UI**元素的設計規(guī)范。當你應用中的UI元素的外觀與功能都是用戶所熟悉的他們可以很容易地根據(jù)先前的經(jīng)驗來使用他們進而更好地使用你的應用。你可以從這些章節(jié)中找到各種UI元素的設計規(guī)范Bars, Content Views, Controls, Temporary Views.
譯者注上文提到的章節(jié)均處在iOS Human Interface Guidelines的第4章翻譯將在后續(xù)更新中放出煩請各位耐心等候。若有需要亦可先參考先前已翻譯的iOS7 UI Elements章節(jié)上下。
不要混用不同版本的**iOS里的UI**元素。你一定不希望讓用戶覺得你的UI元素來自于與當前用戶的設備版本不同的iOS系統(tǒng)。
大體來說請避免創(chuàng)造自定義**UI**元素來表現(xiàn)標準交互行為。先問問你自己為什么一定要創(chuàng)建一個與標準UI元素行為完全相同的自定義元素。如果你只是想改變標準UI元素的外觀可以考慮使用UIKit外觀定制API(UIKit appearance customization APIs)或者給元素填充別的顏色。如果你需要定義一個與標準控件稍有不同的行為請確保你在改變了這個UI元素的屬性和行為之后這個元素仍然能完成你所希望的操作。如果你需要完全自定義一個行為最好是設計一個與標準元素完全不相像的自定義元素。
提示Interface Builder讓獲取標準UI元素使用外觀定制APIthe appearance customization APIs獲取屬性以及在你的應用里使用自定義和系統(tǒng)自帶圖標變得很簡單。想要了解更多Interface Builder的內(nèi)容請參閱Xcode Overview.
不要用系統(tǒng)自帶的按鈕和圖標表達其他含義。iOS提供了多種可用的按鈕和圖標。請確認你了解它們的準確表意不要單純憑借你看到這些圖標樣式的猜測和理解來解讀和使用它們。你可以在Toolbar and Navigation Bar Buttons和Tab Bar Icons中了解到這些按鈕和圖標的準確含義。
如果你所需要的功能無法用系統(tǒng)提供的按鈕和圖標來表現(xiàn)你也可以設計自定義按鈕。自定義按鈕的設計可以參考 Bar Button Icons.
譯者注上文提到的章節(jié)均處在iOS Human Interface Guidelines的第4章翻譯將在后續(xù)更新中放出煩請各位耐心等候。若有需要亦可先參考先前已翻譯的iOS7 UI Elements章節(jié)上下。
如果你的app是沉浸式體驗那么創(chuàng)造全新的自定義UI是合理的。因為你在創(chuàng)造一個統(tǒng)一的體驗環(huán)境讓用戶在其中能夠有所期待并探索如何控制應用。
iOS應用可以幫助用戶創(chuàng)建和處理文件但這并不意味著用戶需要過分考慮iOS設備的文件系統(tǒng)如何運作。
如果你的應用中支持用戶創(chuàng)建和編輯文檔那么提供一個清晰的圖形庫視圖(document library view)讓用戶能夠方便地打開或者新建文檔是一個好的做法。理想狀況下這樣的圖形庫視圖擁有以下特征
舉個例子Pages的圖形庫視圖里面既展示了用戶已存在的文檔也加入了便捷的新建文檔操作。
提示你可以使用Quick Look Preview功能來讓用戶預覽你的應用中的文件哪怕你的應用不能打開這些文件。想要了解如何在你的應用中提供這個功能請參閱Quick Look.
如果你的應用允許用戶使用在其他應用中創(chuàng)建的文檔你可以通過模態(tài)文檔選擇視圖控制器modal document picker view controller來幫助用戶觸達它們。這個控制器可以提取用戶在iCloud中的文檔還可以通過文檔提供者擴展Document Provider extensions來提取在其它應用中創(chuàng)建和儲存的文件。想要了解更多文檔提供者擴展的內(nèi)容可以參考Document Provider Extensions; 想要了解更多文檔提取視圖控制器請參考Document Picker Programming Guide.
給用戶足夠的信心讓他們相信除非主動取消或者刪除他們的成果會被隨時妥善保存**。**如果你的應用幫助用戶創(chuàng)建于管理文檔不能要求用戶每次都能及時保存。無論是打開另一個文檔或切換應用的時候iOS應用都應當承擔起幫助用戶保存輸入內(nèi)容的責任。
如果你的應用的主要功能不是創(chuàng)造內(nèi)容但又允許用戶查看或編輯信息這種情況下你需要詢問用戶是否要保存修改。在這種場景下比較好的做法是提供“編輯”按鈕點擊后進入編輯狀態(tài)同時編輯按鈕變成“保存”和“取消”按鈕這種變化可以提示用戶當前處于編輯模式?!氨4妗笨梢员A粜薷膬?nèi)容“取消”則退出編輯模式。
某些應用需要用戶手動安裝或設置選項但是大部分應用不需要如此。一個好的應用可以讓大部分用戶快速上手并通過主界面給用戶提供便捷的調整體驗的方式。
當你的應用在默認狀態(tài)下就能滿足大部分用戶的期望用戶對設置的需求就減少了。如果你需要儲存用戶的基本資料可以優(yōu)先向系統(tǒng)請求和拉取相關信息而不是上來就讓用戶自己填寫它。如果你一定要提供用戶鮮少用到的設置項請參考App Programming Guide for iOS中的The Setting Bundle部分來了解如何在代碼中定義它們。
盡可能在主UI中提供設置選項。如果這個設置項代表著用戶一個基本任務又或者用戶在進行主線任務時有可能頻繁改變設置那么將設置項放在主UI中會很方便。如果用戶只是偶爾才會用到設置項那么可以將其放在獨立的視圖中。
如果應用內(nèi)相關設置需要在系統(tǒng)設置中改變幫助用戶直接訪問系統(tǒng)設置。尤其是如果你要用一段文字來描述如何改變這個設置比如“設置>隱私>定位服務”倒不如直接放置一個按鈕點擊后即可到達設置中的定位服務。想要了解如何實現(xiàn)請參考 Settings Launch URL.
iOS提供了豐富的技術方式來支持用戶完成他們所期望的各種任務和場景。這意味著在絕大多數(shù)情況下將系統(tǒng)提供的技術整合到你的應用中往往比自定義一種新的技術更為可靠。
某些iOS技術比如多任務并行Multitasking與語音向導VoiceOver等等是所有應用都應該包含的系統(tǒng)級特性。而另外一些技術是否整合到應用中則取決于應用本身的功能性。比如處理門票和禮品卡的應用Wallet支持用戶在應用內(nèi)內(nèi)購 In-App Purchase展示應用內(nèi)置廣告iAd Rich Media Ads則可以整合 Game Center同時支持iCloud.
更多建議: