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中 屏幕以及字体 大小适配的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 运营管理最新版史蒂文森_运营管理-史蒂文
- 下一篇: ios 获取沙河文件夹_关于 iOS 沙