在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ HTML/ 像素比率
JavaScript 環(huán)境
計(jì)時器
Native 模塊(iOS)
入門
在設(shè)備上運(yùn)行
ProgressBarAndroid
iOS 應(yīng)用程序狀態(tài)
網(wǎng)絡(luò)
ToolbarAndroid
測試
輔助功能
網(wǎng)絡(luò)信息
DrawerLayoutAndroid
樣式表
手勢應(yīng)答系統(tǒng)
與現(xiàn)有的應(yīng)用程序集成
樣式
教程
不透明觸摸
調(diào)試 React Native 應(yīng)用
iOS 活動指示器
導(dǎo)航器
無反饋觸摸
動畫布局
Web 視圖
鏈接庫
像素比率
React Native 官網(wǎng)首頁介紹
iOS 導(dǎo)航器
交互管理器
全景響應(yīng)器
SwitchAndroid
TabBarIOS.Item
相機(jī)滾動
ToastAndroid
iOS 震動
BackAndroid
文本輸入
iOS 選擇器
應(yīng)用程序注冊表
iOS 開關(guān)
滾動視圖
iOS 日期選擇器
iOS 警告
iOS 鏈接
視圖
圖片
列表視圖
異步存儲
Native UI 組件(Android)
iOS 滑塊
Map 視圖
高亮觸摸
iOS 推送通知
文本
定位
iOS 狀態(tài)欄
Native UI 組件(iOS)
在設(shè)備上運(yùn)行(Android)
Native 模塊(Android)
Flexbox
已知 Issues
iOS 選項(xiàng)卡
安裝 Android 運(yùn)行環(huán)境

像素比率

PixelRatio 類為像素密度設(shè)備提供了訪問權(quán)。

這里有一些使用 PixelRatio 的用例:

顯示一條和設(shè)備許可一樣細(xì)的線

寬度 1 實(shí)際上相當(dāng)于 iPhone4+ 的厚度,我們可以使用設(shè)定寬度為 1 / PixelRatio.get() 的函數(shù)來實(shí)現(xiàn)。這是一項(xiàng)獨(dú)立于像素密度的應(yīng)用在所有設(shè)備上的技術(shù)。

style={{ borderWidth: 1 / PixelRatio.get() }}

獲取一個正確大小的圖像

如果你使用的是一臺像素密度比較高的設(shè)備上,那你應(yīng)該得到一個更高分辨率的圖像。一個好的經(jīng)驗(yàn)法則是在 pixel ratio 上顯示多種圖像的尺寸。

    var image = getImage({
      width: 200 * PixelRatio.get(),
      height: 100 * PixelRatio.get()
    });
    <Image source={image} style={{width: 200, height: 100}} />

方法

static get()

返回設(shè)備的像素密度。一些例子:

  • PixelRatio.get() === 2
    • iPhone 4, 4S
    • iPhone 5, 5c, 5s
    • iPhone 6
  • PixelRatio.get() === 3
    • iPhone 6 plus

產(chǎn)品描述

Edit on GitHub

像素網(wǎng)格拍攝

在 iOS 里,你可以為元素指定有任意精度的位置和尺寸,例如29.674825。但是,最終的物理顯示就只有一個固定的像素值,例如在 iPhone4 上是 640960,或者在 iPhone6 上是 7501334。iOS 試圖通過將一個原始的像素?cái)U(kuò)展成多個值得方法,看似是盡可能忠實(shí)于用戶的體驗(yàn)價值,實(shí)際上是欺騙了眾人的眼睛。這項(xiàng)技術(shù)的缺點(diǎn)是使得生成的元素看起來很模糊。

實(shí)際上,我們發(fā)現(xiàn)開發(fā)人員并不需要這項(xiàng)功能,但是為了避免生成模糊的像素,他們不得不對它進(jìn)行手動舍入操作。在 React Native 里,我們都是自動對這些元素進(jìn)行舍入。

在進(jìn)行舍入時,我們必須相當(dāng)?shù)男⌒?。你永遠(yuǎn)不希望在同一時間使用正常值和四舍五入的值,那就好像你正在不斷的積累舍入誤差。甚至一個舍入誤差會造成致命性的錯誤,因?yàn)橐粋€像素邊界可能會消失或者變成兩倍那么大。

在 React Native 里,在JS和布局引擎里的一切值都是以一個任意精度的數(shù)來進(jìn)行工作的。這只會發(fā)生在當(dāng)在為主線程里我們進(jìn)行舍入的原生元素設(shè)定任意位置和尺寸的時候。同時,舍入操作是針對根而不是父母完成的,這又一次避免了累積舍入誤差。