日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

native字体尺寸自适应 react_react-native中 屏幕以及字体 大小适配

發布時間:2025/3/21 编程问答 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 native字体尺寸自适应 react_react-native中 屏幕以及字体 大小适配 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

import {

Platform,

Dimensions,

PixelRatio

} from 'react-native';

// iPhoneX

const X_WIDTH = 375;

const X_HEIGHT = 812;

// screen 屏幕寬度

export const SCREEN_WIDTH = Dimensions.get('window').width;

// screen 屏幕高度

export const SCREEN_HEIGHT = Dimensions.get('window').height;

/*

是否iPhone X

*/

export function isIphoneX() {

return (

Platform.OS === 'ios' &&

((SCREEN_HEIGHT === X_HEIGHT && SCREEN_WIDTH === X_WIDTH) ||

(SCREEN_HEIGHT === X_WIDTH && SCREEN_WIDTH === X_HEIGHT))

)

}

// 字體大小縮放比例

var fontScale = PixelRatio.getFontScale();

// 設備像素密度

export var pixelRatio = PixelRatio.get();

/*

設計圖標準 750 * 1334

*/

const w2 = 750 / 2;

const h2 = 1334 / 2;

/**

* 設置text為sp

* @param size sp

* @returns size

*/

export const DEFAULT_DENSITY = 2;

export function setSpText(size) {

var scaleWidth = SCREEN_WIDTH / w2;

var scaleHeight = SCREEN_HEIGHT / h2;

var scale = Math.min(scaleWidth, scaleHeight);

size = Math.round((size * scale + 0.5) * pixelRatio / fontScale);

return size / PixelRatio.get();

}

/**

* 屏幕適配,縮放size

* @param size

* @returns size

* @constructor

*/

export function scaleSize(size) {

var scaleWidth = SCREEN_WIDTH / w2;

var scaleHeight = SCREEN_HEIGHT / h2;

var scale = Math.min(scaleWidth, scaleHeight);

size = Math.round((size * scale + 0.5));

return size;

}

/*

導出URL 可以用

export const baseURLVersion = 'www.baidu.com';

*/

總結

以上是生活随笔為你收集整理的native字体尺寸自适应 react_react-native中 屏幕以及字体 大小适配的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。