學習ios設計(1)

来源:http://www.cnblogs.com/themachine/archive/2016/02/03/5180103.html
-Advertisement-
Play Games

兩年前,蘋果為現代的使用者完全改變了設計語言。對於設計者來說,這使得他們更容易關註動畫和功能而不是其他的細枝末節。 我已經被問過很多次怎樣開始設計或者是有什麼捷徑可以成為更好的設計師。雖然沒有銀彈,然而有很多的技巧和規則設計將影響您普遍設計的方式。 即使你設計一個完全不同的平臺上,如果您已經瞭解了在


 

兩年前,蘋果為現代的使用者完全改變了設計語言。對於設計者來說,這使得他們更容易關註動畫和功能而不是其他的細枝末節。

我已經被問過很多次怎樣開始設計或者是有什麼捷徑可以成為更好的設計師。雖然沒有銀彈,然而有很多的技巧和規則設計將影響您普遍設計的方式。

即使你設計一個完全不同的平臺上,如果您已經瞭解了在網路上和列印相同的設計觀念依然存在,您可以應用相同的技術。iOS是一個平臺,設計是回到它的根源。感覺就像一個現代的雜誌,有漂亮的文字版式和簡單的佈局。在這本書中你將學習的東西會有利於你設計最好的產品。

核心理念

iOS是由3個核心理念:尊重、清晰和深度(deference, clarity and depth)。根據這些設計原則,我將用可操作的項目來解釋他們更深的含義。

deference 

你的內容應該是首要的,其他一切都是次要的。使用元素的補充你的內容,避免視覺分散。

  簡化

你的用戶界面應該是精簡後的核心。每次添加一個元素,問問你自己“這是必要的嗎?”。除非你的應用程式是一個游戲或一個特定的主題,會使用沉重的紋理,3 d效果和多個陰影。否則,專註於功能顏色,和諧漸變和漂亮字體。

 

  最大化內容

內容應該鋪滿整個屏幕,給最大的空間內的元素。避免多個容器和滾動區域最大化,這將允許更多的互動空間。

Colors

用突出的顏色顯示一個可點擊元素或是在標簽欄上高亮顯示。選擇正確的顏色和中性色調可以打破你的設計。

 

   排版是內容

因為簡化的用戶界面和關註的內容,你的排版會占據屏幕的從50%降至90%。因此,它是至關重要的,選擇一個美麗的字體和設置它的重量,行高,顏色在視覺上賞心悅目是最佳的閱讀。這個方面在排版部分將更詳細地解釋。

空閑空間

用空閑空間顯示關註的內容。你看到的越少,你越能專註於一些事情。合適的間距提供喘息空間。不要把你的屏幕塞滿太多結構或不必要的視覺元素。

 

  圖標狀態

導航欄的圖標分為兩種模式:無填充和填充模式。無填充的原因是減少分心。當一個圖標是填充的,會有更多的關註,也意味著界面是活躍的。

clarity

讓事情明顯。按鈕應該不言自明,排版應該足夠大併在一個舒適的距離有可讀性。你的內容應該清楚地表明你的應用程式是什麼。例如,如果這是一個咖啡應用,那麼你應該有提醒的咖啡豆,咖啡和棕色的顏色的咖啡。

  使文本具有可讀性

在Retina,排版應該11 pt的最小大小。閱讀的最佳大小大約是16 pt。

  使用顯眼的圖標

圖標不應該是模棱兩可的,他們應該標明符號是什麼意思。可能的話,使用文本來配圖標。不要重覆使用一個圖標在不同的地方。同樣,不要使用通用的文字如“返回”或“提交”,而是具體的說:“回到家裡”或“註冊一個新帳戶”。

  描述性的屏幕

每個頁面應該有清楚的解釋。應該有最小的品牌,這個品牌可以用一個清晰的屏幕的標題和標簽欄高亮狀態來代替。

  顏色的意義

顏色是有意義的,使用紅色,綠色,中性色合理暗示了否定,肯定的行為,鏈接和不活躍的狀態。不要隨便使用這些顏色以免混淆你的用戶。例如,不要使用綠色的按鈕來處理“刪除這個界面”事件。

  有層次的界面

就我個人而言,我覺得這是iOS最激動人心的的和獨特的方面。每一個屏幕轉換從一個到另一個地方。主屏幕縮放到一個文件夾,然後縮放到一個應用程式。傳統上,這種技術是很難執行,但由於Xcode,他們比以往任何時候都更加容易。在動畫部分會詳細解釋。

  模糊的背景

保持上下文的背景界面不應該保持內容的清晰。模糊的背景不僅讓你保持其自然的顏色,但同時也帶來了前景。模糊並不是一個發明,它已經存在在現實生活中,當你專註於某事,一切變得模糊。

  讓它變得令人愉悅

    指南中提到的3件事可以使你的應用脫穎而出:動畫,手勢和聲音。但是很容易走極端,所以使用要適度。

動畫

屏幕動畫不僅能過渡到另一個屏幕,增加了設計的趣味性。它也帶來了重要的元素。

通過引入iPhone 5的高屏幕,拇指的後退按鈕太高很容易達到。因此,儘管不那麼明顯可見的按鈕,一個手勢可以延長到交互。這讓用戶更容易操作。我們需要更少的視覺線索和更有用的功能。

聲音

聲音是最低限度使用的應用程式,他們可以將一個平凡的任務為一個真正有益的經驗。人們甚至可以識別你的應用程式在沒有看到它的時候。當聲音留下正確的印象,意味著你用最少的努力獲得了成功。

三個原則

如果你忽視一切,至少必須考慮這三個重要的規則,iOS設計:考慮到觸摸界面,使文本可讀性和優化iPhone 5,6和6 +。

  觸摸設計

應該很容易觸碰按鈕。他們之間的大小應該30-60pt寬。最優大小44 pt。在極少數情況下,設置為22 pt的鏈接文本內部,但謹慎使用,因為他們變得難以利用。文本按鈕有觸摸區至少30 pt。

  可讀性

排版應該11 pt的最小大小。最佳的閱讀字體大小大約是16 pt。使用行高120 - 145%的閱讀體驗更好。

   佈局

你現在應該尊重3決議:320 x480pt 375 x667pt和414 x736pt。確保使用額外的空間,和瞭解你的內容可以根據屏幕大小擴張。

  橫屏模式

iPhone 6 +越來越受歡迎,尤其是在中國(大約40%)。應用程式將會出現不同的景觀模式,顯示一個額外的菜單左邊,類似於在iPad上。因此,許多應用程式開始支持橫屏模式。

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • javascript如何設置指定標簽的透明度:在實際應用中,可能需要動態的設置標簽的透明度,現在就以div為例子介紹一下如何實現此效果。代碼實例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author"
  • body在預設情況下是具有margin外邊距的:這裡只是陳述一個事實,那就是body具有外邊距在預設情況下。代碼實例如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http:/
  • 本篇將從四個方面對iOS開發中使用到的NSOperation技術進行講解: 一、什麼是NSOperation 二、我們為什麼使用NSOperation 三、在實際開發中如何使用NSOperation 1、自定義NSOperation 2、NSOperation的基本使用 3、NSOperation實
  • 分類:C#、Android; 日期:2016-02-04 3.5 示例5--多地圖展示 一、簡介 地圖控制項自v2.3.5版本起,支持多實例,即開發者可以在一個頁面中建立多個地圖對象,並且針對這些對象分別操作且不會產生相互干擾。 文件名:Demo04MultiMapView.cs 簡介:介紹多MapV
  • 本篇將從四個方面對iOS開發中GCD的使用進行詳盡的講解: 一、什麼是GCD 二、我們為什麼要用GCD技術 三、在實際開發中如何使用GCD更好的實現我們的需求 一、Synchronous & Asynchronous 同步 & 非同步 二、Serial Queues & Concurrent Queu
  • Android編譯過程中遇到的難題及解決方案。
  • UIViewAutoresizingNone = 0, UIViewAutoresizingFlexibleLeftMargin = 1 << 0, UIViewAutoresizingFlexibleWidth = 1 << 1, UIViewAutoresizingFlexibleRightMa
  • 本篇爭取一篇講清講透,依然將通過四大方面清晰的對iOS開發中多線程的用法進行詳盡的講解: 一、什麼是多線程 1)多線程執行原理 2)線程與進程 3)多線程的優缺點 二、我們為什麼要用多線程編程技術 三、如何使用多線程技術 1)pthread技術 2)NSThread技術 2.1)線程屬性 2.2)資
一周排行
    -Advertisement-
    Play Games
  • 前言 在我們開發過程中基本上不可或缺的用到一些敏感機密數據,比如SQL伺服器的連接串或者是OAuth2的Secret等,這些敏感數據在代碼中是不太安全的,我們不應該在源代碼中存儲密碼和其他的敏感數據,一種推薦的方式是通過Asp.Net Core的機密管理器。 機密管理器 在 ASP.NET Core ...
  • 新改進提供的Taurus Rpc 功能,可以簡化微服務間的調用,同時可以不用再手動輸出模塊名稱,或調用路徑,包括負載均衡,這一切,由框架實現並提供了。新的Taurus Rpc 功能,將使得服務間的調用,更加輕鬆、簡約、高效。 ...
  • 順序棧的介面程式 目錄順序棧的介面程式頭文件創建順序棧入棧出棧利用棧將10進位轉16進位數驗證 頭文件 #include <stdio.h> #include <stdbool.h> #include <stdlib.h> 創建順序棧 // 指的是順序棧中的元素的數據類型,用戶可以根據需要進行修改 ...
  • 前言 整理這個官方翻譯的系列,原因是網上大部分的 tomcat 版本比較舊,此版本為 v11 最新的版本。 開源項目 從零手寫實現 tomcat minicat 別稱【嗅虎】心有猛虎,輕嗅薔薇。 系列文章 web server apache tomcat11-01-官方文檔入門介紹 web serv ...
  • C總結與剖析:關鍵字篇 -- <<C語言深度解剖>> 目錄C總結與剖析:關鍵字篇 -- <<C語言深度解剖>>程式的本質:二進位文件變數1.變數:記憶體上的某個位置開闢的空間2.變數的初始化3.為什麼要有變數4.局部變數與全局變數5.變數的大小由類型決定6.任何一個變數,記憶體賦值都是從低地址開始往高地 ...
  • 如果讓你來做一個有狀態流式應用的故障恢復,你會如何來做呢? 單機和多機會遇到什麼不同的問題? Flink Checkpoint 是做什麼用的?原理是什麼? ...
  • C++ 多級繼承 多級繼承是一種面向對象編程(OOP)特性,允許一個類從多個基類繼承屬性和方法。它使代碼更易於組織和維護,並促進代碼重用。 多級繼承的語法 在 C++ 中,使用 : 符號來指定繼承關係。多級繼承的語法如下: class DerivedClass : public BaseClass1 ...
  • 前言 什麼是SpringCloud? Spring Cloud 是一系列框架的有序集合,它利用 Spring Boot 的開發便利性簡化了分散式系統的開發,比如服務註冊、服務發現、網關、路由、鏈路追蹤等。Spring Cloud 並不是重覆造輪子,而是將市面上開發得比較好的模塊集成進去,進行封裝,從 ...
  • class_template 類模板和函數模板的定義和使用類似,我們已經進行了介紹。有時,有兩個或多個類,其功能是相同的,僅僅是數據類型不同。類模板用於實現類所需數據的類型參數化 template<class NameType, class AgeType> class Person { publi ...
  • 目錄system v IPC簡介共用記憶體需要用到的函數介面shmget函數--獲取對象IDshmat函數--獲得映射空間shmctl函數--釋放資源共用記憶體實現思路註意 system v IPC簡介 消息隊列、共用記憶體和信號量統稱為system v IPC(進程間通信機制),V是羅馬數字5,是UNI ...