中文字幕第五页-中文字幕第页-中文字幕韩国-中文字幕最新-国产尤物二区三区在线观看-国产尤物福利视频一区二区

ios開發屏幕適配問題,ios開發屏幕適配問題解決

iOS-屏幕適配(一)

(參考 The Ultimate Guide To iPhone Resolutions )

海拉爾網站制作公司哪家好,找創新互聯建站!從網頁設計、網站建設、微信開發、APP開發、響應式網站等網站項目制作,到程序開發,運營維護。創新互聯建站成立與2013年到現在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選創新互聯建站

屏幕模式( 1x , 2x , 3x ):

描述的就是屏幕中一個點有多少個 Rendered Pixels 渲染,對于 2 倍屏(又稱 Retina 顯示屏),會有 2 * 2 = 4 個像素的面積渲染,對于3倍屏(又稱 Retina HD 顯示屏),會有 3 * 3 = 9 個像素的面積渲染

iOS 開發中,所有控件的坐標以及控件大小都是以點為單位的。假如我在屏幕上需要展示一張 20 * 20 (單位: point )大小的圖片,那么設計師應該怎么給我圖呢?

這里就會用到屏幕模式的概念,如果屏幕是 2x ,那么就需要提供 40 * 40 (單位: pixel )大小的圖片,如果屏幕是 3x ,那么就提供 60 * 60 大小的圖片,且圖片的命名需要遵守以下規范:

ImageName:

圖片名字,根據場景命名 device_modifier: 可選,可以是 ~ipad 或者 ~iphone , 當需要為 iPad 和 iPhone 分別指定一套圖時需要加上此字段 filename_extension: 圖片后綴名, iOS 中使用 png 圖片

現在iPhone的屏幕尺寸也不再單一,那么現在以怎樣的流程來進行iOS的研發更合適呢?

這個問題很早之前在知乎上已經被討論,附上鏈接: 手機淘寶設計師pigtwo的回答

控件彈性指的是, navigation 、 cell 、 bar 等適配過程中垂直方向上高度不變;水平方向寬度變化時,通過調整元素間距或元素右對齊的方式實現自適應。這樣屏幕越大,在垂直方向上可以顯示更多內容,發揮大屏幕的優勢

原文地址

iOS 四種iPhone屏幕適配方案(借鑒)

Come on! 來看看 主流的適配方案吧

隨著蘋果發布兩種新尺寸的大屏iPhone 6,iOS平臺尺寸適配問題終于還是來了,移動設計全面進入“雜屏”時代。看看下面三款iPhone尺寸和分辨率數據就知道屏幕有多雜了。

當然除了這三種還有iPhone4 屏幕是 640*960,加起來就有四種屏幕了,你有沒有感覺很復雜,發過愁嗎,我們來慢慢分析下

加上Android生態中紛繁復雜的各種奇葩尺寸,現在APP設計開發必須考慮適配大、中、小三種屏幕。所以如何做到交付一套設計稿解決適配大中小三屏的問題?設計和開發之間采用什么協作模式?一個基本思路是:

1、選擇一種尺寸作為設計和開發基準;

2、定義一套適配規則,自動適配剩下兩種尺寸;

3、特殊適配效果給出設計效果。

來看一下手機淘寶的iPhone 6/iPhone 6 Plus采用的協作模式,再慢慢說明原委。

第一步,視覺設計階段,設計師按寬度750px(iPhone 6)做設計稿,除圖片外所有設計元素用矢量路徑來做。設計定稿后在750px的設計稿上做標注,輸出標注圖。同時等比放大1.5倍生成寬度1125px的設計稿,在1125px的稿子里切圖。

第二步,輸出兩個交付物給開發工程師:一個是程序用到的@3x切圖資源,另一個是寬度750px的設計標注圖。

第三步,開發工程師拿到750px標注圖和@3x切圖資源,完成iPhone 6(375pt)的界面開發。此階段不能用固定寬度的方式開發界面,得用自動布局(auto layout),方便后續適配到其它尺寸。

第四步,適配調試階段,基于iPhone 6的界面效果,分別向上向下調試iPhone 6 plus(414pt)和iPhone 5S及以下(320pt)的界面效果。由此完成大中小三屏適配。

為什么選擇iPhone 6作為基準尺寸?

當面對大中小三種屏幕需要適配的時候,很容易想到先做好一種屏幕,再去適配剩下兩種屏幕。第一個決定是到底以哪種屏幕作為設計和開發的基準尺寸。我們選擇中間尺寸的iPhone 6(750px/375pt)作為基準,基于幾個原因:

1、從中間尺寸向上和向下適配的時候界面調整的幅度最小。375pt下的設計效果適配到414pt和320pt偏差不會太大。假設以414pt為基準做出很優雅的設計,到320pt可能元素之間比例就不是那么回事了,比如圖片和文字之間視覺比例可能失調。

2、iPhone 6 plus有兩種顯示模式,標準模式分辨率為1242x2208,放大模式分辨率為1125x2001(即iPhone 6的1.5倍)。可見官方系統里iPhone 6和iPhone 6 plus分辨率之間就存在1.5倍的倍率關系。很多情況下這兩種尺寸可以用1.5倍直接等比適配。

3、1242x2208這個奇葩的數值是蘋果官方都不愿意公開宣傳的一個分辨率,不便于記憶和計算柵格。640x1136雖然是廣泛應用的一個分辨率,但是大屏時代依然以小尺寸為設計基準顯然不合時宜,設計師會停留在小屏的視角做設計。

所以,iPhone6的750x1334是最適合基準尺寸。

只交付一套設計稿,默認用什么規則來適配?

前文提到適配策略是先選擇iPhone 6作為基準設計尺寸,然后通過一套適配規則自動適配到另外兩種尺寸。這套適配規則總結起來就一句話:文字流式,控件彈性,圖片等比縮放

控件彈性指的是,navigation、cell、bar等適配過程中垂直方向上高度不變;水平方向寬度變化時,通過調整元素間距或元素右對齊的方式實現自適應。這樣屏幕越大,在垂直方向上可以顯示更多內容,發揮大屏幕的優勢。

按照上述默認適配規則,大中小三種屏幕顯示效果均相同。有時候想在大屏幕顯示更多內容,需要設計出特殊適配效果。比如App store首頁焦點圖,從iPhone 6適配到iPhone 6 plus時焦點圖尺寸和排版做了特殊處理。底下應用列表也從一排3+個變成一排4+個,真正實現了大屏幕顯示更多內容的理念。這些就需要設計師給出相應設計稿。

讀完你懂了嗎,如果有疑問,歡飲留言跟我討論╰( ̄▽ ̄)╮

原文地址

iOS屏幕適配的兩種方法

第一種

添加兩個文件 ?UIViewExt.h與UIViewExt.m文件

在ViewController.h文件中導入頭文件

#import"UIViewExt.h"

然后宏定義 獲取設備的高與寬

#define HEIGHT self.view.height

#define WIDTH self.view.width

然后在ViewController.m文件中初始化各種控件時就可以使用視圖的相對位置

self.lblName=[[UILabelalloc]initWithFrame:CGRectMake(self.view.left+50,self.view.top+100,WIDTH/8,HEIGHT/16)];

self.lblPassworw=[[UILabelalloc]initWithFrame:CGRectMake(self.view.left+50,self.lblName.bottom+10,WIDTH/8,HEIGHT/16)];

第二種

這種方法是 等比縮放

首先在AppDelegate.h文件里面

宏定義 獲取設備的高與寬

#define SCREENHEIGHT [[UIScreen mainScreen] bounds].size.height

#define SCREENWIDTH [[UIScreen mainScreen] bounds].size.width

接著聲明兩個屬性變量

@property(assign,nonatomic)floatautoSizeScaleX;

@property(assign,nonatomic)floatautoSizeScaleY;

在AppDelegate.m文件里面

//初始化AppDelegate單例的方法

AppDelegate*myDelegate=[[UIApplicationsharedApplication]delegate];

//判斷屏幕的高大于480即為iPhone5或以上設備因為它們屏幕都是等比增長的

if(SCREENHEIGHT480)

{

/**

*以iPhone5為基準若是iPhone5

則myDelegate.autoSizeScaleX=SCREENWIDTH/320;

即為myDelegate.autoSizeScaleX=320/320;

若是iPhone6

則myDelegate.autoSizeScaleX=SCREENWIDTH/320;

即為myDelegate.autoSizeScaleX=375/320;

*/

myDelegate.autoSizeScaleX=SCREENWIDTH/320;

myDelegate.autoSizeScaleY=SCREENHEIGHT/568;

}

else{

/**

*否則即為iPhone4

*/

myDelegate.autoSizeScaleX=1.0;

myDelegate.autoSizeScaleY=1.0;

}

在ViewController.h文件中使用時導入頭文件

#import"AppDelegate.h"

模仿系統的CGRectMake方法 重寫一個CGRectMake1方法 ?在初始化控件時用這個方法就可以實現等比縮放 來失陪不同屏幕尺寸的iPhone

/**

*? CG_INLINE為內聯函數

將CGRectMake重新定義為CGRectMake1

*

*? @param x????? #x description#

*? @param y????? #y description#

*? @param width? #width description#

*? @param height #height description#

*

*? @return rect的大小

*/

CG_INLINECGRect

CGRectMake1(CGFloatx,CGFloaty,CGFloatwidth,CGFloatheight)

{

CGRectrect;

AppDelegate*myDelegate=[[UIApplicationsharedApplication]delegate];

rect.origin.x= x *? myDelegate.autoSizeScaleX;

rect.origin.y= y *? myDelegate.autoSizeScaleY;

rect.size.width= width * myDelegate.autoSizeScaleX;

rect.size.height= height * myDelegate.autoSizeScaleY;

returnrect;

}

iOS屏幕尺寸適配

針對不同屏幕尺寸的適配,主要有3種方式:

1.不同屏幕尺寸下,元素的尺寸是固定的;

2.不同屏幕尺寸下,元素的尺寸改變一個delta值;

3.不同屏幕尺寸下,元素的尺寸隨屏幕尺寸縮放。

這里記錄一些適配中經常用到的宏。

2.不同屏幕尺寸下,元素的尺寸改變一個delta值

3.不同屏幕尺寸下,元素的尺寸隨屏幕尺寸縮放

當前標題:ios開發屏幕適配問題,ios開發屏幕適配問題解決
地址分享:http://m.2m8n56k.cn/article40/hojceo.html

成都網站建設公司_創新互聯,為您提供品牌網站設計網站營銷定制網站網站收錄企業建站網站制作

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

外貿網站建設
主站蜘蛛池模板: 一级成人黄色片 | 美女黄色片免费 | 干欧美女人 | 中文字幕 日韩在线 | 国产精品色综合久久 | 中文字幕久久亚洲一区 | 欧美午夜影院 | 久久国产a | 日本护士一级毛片在线播放 | 亚洲欧美综合一区二区三区四区 | 欧美一级高清片 | 欧美成人免费午夜全 | 国产高清精品自在久久 | 欧美日韩亚洲精品一区 | 亚洲国产欧美在线人成精品一区二区 | 欧美综合视频在线观看 | 狠狠综合久久久久综合小说网 | 在线视频中文 | 国产精品视频永久免费播放 | 欧美亚洲日本韩国一级毛片 | 毛片免费观看的视频在线 | 国产精品久久毛片蜜月 | 国产精品亚洲专区在线播放 | 一级做α爱过程免费视频 | 免费人成激情视频在线观看冫 | 各种偷拍盗摄视频在线观看 | 男女性关系视频免费观看软件 | 手机看成人片 | 97在线视频观看 | a级片在线免费看 | 精品日韩在线视频一区二区三区 | 日本久久综合网 | 国产欧美亚洲三区久在线观看 | 最爽的乱淫片免费 | 亚洲最新在线视频 | 特级一级毛片视频免费观看 | 成人α片 | 亚洲国产欧美日韩 | 久久男人的天堂 | 欧美一级视频精品观看 | 国产伦精品一区二区三区网站 |