以像素密度獲取圖片

PixelRatio類提供了訪問設備的像素密度的方法。

使用PixelRatio有如下幾種常用情形:

根據像素密度獲取指定大小的圖片

如果應用運行在一個高像素密度的設備上,顯示的圖片也應當分辨率更高。一個取得縮略圖的好規則就是將顯示尺寸乘以像素密度比:

var image = getImage({

width: PixelRatio.getPixelSizeForLayoutSize(200),

height: PixelRatio.getPixelSizeForLayoutSize(100),});

<Image source={image} style={{width:200, height:100}} />

譯註: 這段代碼的意思是,如果你要在屏幕上擺放一個寬200高100的圖片,那麼首先要準備多個分辨率尺寸的圖。PixelRatio.getPixelSizeForLayoutSize(200)方法會根據當前設備的pixelratio返回對應值,比如當前設備的pixelratio為2,則返回 200 * 2 = 400,最後生成的參數為{ width: 400, height: 200 },然後開發者自己實現getImage方法,根據這一參數,返回最符合此尺寸的圖片地址。

PixelRatio.get() === 1

    • mdpi Android 設備 (160 dpi)
  • PixelRatio.get() === 1.5
    • hdpi Android 設備 (240 dpi)
  • PixelRatio.get() === 2
    • iPhone 4, 4S
    • iPhone 5, 5c, 5s
    • iPhone 6
    • xhdpi Android 設備 (320 dpi)
  • PixelRatio.get() === 3
    • iPhone 6 plus
    • xxhdpi Android 設備 (480 dpi)
  • PixelRatio.get() === 3.5
    • Nexus 6

ref:http://reactnative.cn/docs/0.30/pixelratio.html

results matching ""

    No results matching ""