亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

react native 字體不隨系統字體變化而變

2019-11-09 15:04:51
字體:
來源:轉載
供稿:網友

最近遇到了一個問題,rn寫的軟件內的字體(text組件)會隨著手機系統字體大小的變化而變,也就是說當你把手機系統的顯示-字體調到最大號,打開軟件,text的字體會變得非常大,布局就亂了。

下面就這個問題提供下解決的方案:

1、android 的解決方案是:

const fontSizeScaler = PixelRatio.get()/PixelRatio.getFontScale()

fontSize:18*fontSizeScaler

其中用到了PixelRatio的兩個方法,

    get() 返回設備的像素密度,

    getFontScale()返回字體大小縮放比例. 這個比例可以用于計算絕對的字體大小, 所以很多深度依賴字體大小的組件需要用此函數的結果進行計算.

如果沒有設置字體大小, 它會直接返回設備的像素密度.

目前這個函數僅僅在Android設備上實現了, 它會體現用戶選項里的 "設置 > 顯示 > 字體大小". 在iOS設備上它會直接返回默認的像素密度.

感興趣的同學可以打印測試下:

字體隨著系統字體變化

由此我們可以看出,系統的字體越大,PixelRatio.getFontScale()字體的縮放比越大,反之越小,fontSizeScaler的值就越小和系統字體成反比,才能在系統字體變大的情況下,軟件的字體相對變小,總體大小保持不變

2、ios 的解決方案是:

ios 上返回的默認就是像素密度,所以不起作用,需要用到text的一個屬性,這個屬性只對ios生效:

allowFontScaling={false}

這樣的話,軟件中的字體就不會隨著系統字體的變化而變了,但是不管在大屏7plus還是小屏5s,字體的大小都是一樣的,這樣在小屏幕手機上布局又會變化。

這樣的話我們要針對小屏幕的手機再次優化,判斷像素比。

if (pixelRatio === 2) {

    // iphone 5s and older Androids

    if (deviceWidth < 360) {

        return size * 0.95;

    }

    // iphone 5

    if (deviceHeight < 667) {

        return size;

    // iphone 6-6s

    } else if (deviceHeight >= 667 && deviceHeight <= 735) {

        return size * 1.15;

    }

    // older phablets

    return size * 1.25;

 }

if (pixelRatio === 3) {

    // catch larger devices

    // ie iphone 6s plus / 7 plus / mi note 等等

    return size * 1.27;

}

里面的比值大家根據自己的實際情況自行調整,

這樣就能根據大小屏幕的手機進行適配了,

這里感謝好朋友(下一刻。)QQ:303152878的幫助


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩视频免费大全中文字幕| 欧美性受xxxx白人性爽| 国产一区二区日韩| 91精品国产高清自在线看超| 日韩欧美一区二区三区| 欧美怡春院一区二区三区| 国产欧洲精品视频| 91亚洲精品在线| 亚洲精品中文字幕av| 欧美大奶子在线| 日韩三级影视基地| 日韩有码在线视频| 欧美最猛性xxxxx(亚洲精品)| 亚洲精品福利在线| 久久99亚洲热视| 日韩av综合网| 青青久久av北条麻妃黑人| 亚洲男人第一av网站| 久久精品色欧美aⅴ一区二区| 国产精品中文久久久久久久| 中文字幕日韩免费视频| 精品国产依人香蕉在线精品| 欧美在线视频观看| 欧美日韩久久久久| 亚洲男人天堂2024| 久久久久久一区二区三区| 欧美日韩国产在线| 亚洲成年人在线| 一本大道久久加勒比香蕉| 欧美日韩999| 欧美影院久久久| 欧美一级黑人aaaaaaa做受| 日本免费久久高清视频| 91sa在线看| 精品国产欧美一区二区五十路| 国产精品91视频| 国产精品免费在线免费| 国产精品视频网址| 亚洲最大的成人网| 成人在线视频网站| 国产成人精品在线| 国产成人一区二区| 久久精彩免费视频| 日韩国产高清污视频在线观看| 亚洲欧美一区二区三区四区| 精品国产福利视频| 国产精品露脸av在线| 日韩成人av网址| 国产精品96久久久久久| 国产精品青草久久久久福利99| 国产精品视频自在线| 尤物九九久久国产精品的分类| 国a精品视频大全| 欧美一级bbbbb性bbbb喷潮片| 日本高清久久天堂| 97超碰蝌蚪网人人做人人爽| 69视频在线免费观看| 亚洲精品自拍偷拍| 日韩精品在线免费播放| 欧美黄色片免费观看| 亚洲精品中文字幕av| 91色精品视频在线| 在线日韩日本国产亚洲| 亚洲深夜福利网站| 红桃视频成人在线观看| 日韩在线国产精品| 欧美激情一二三| 97视频色精品| 精品国内产的精品视频在线观看| 国产精品视频99| 欧美大荫蒂xxx| 精品亚洲精品福利线在观看| …久久精品99久久香蕉国产| 亚洲最新视频在线| 91日韩在线播放| 亚洲欧洲视频在线| 亚洲男人的天堂网站| 国产精品高潮呻吟久久av无限| 日本亚洲欧洲色| 亚洲精品综合精品自拍| 欧美xxxx做受欧美| 日本成人精品在线| 国产不卡在线观看| 亚洲精品免费一区二区三区| 美女撒尿一区二区三区| 日本国产欧美一区二区三区| 一二美女精品欧洲| 色悠悠久久久久| 久久99热这里只有精品国产| 亚洲精品av在线播放| 欧美成人免费小视频| 亚洲高清免费观看高清完整版| 欧美在线视频a| 中文欧美日本在线资源| 欧洲中文字幕国产精品| 午夜精品免费视频| 视频在线一区二区| 国产精品久久久久久av下载红粉| 97视频在线播放| 福利视频第一区| 岛国av一区二区在线在线观看| 国内精品一区二区三区| 精品国产一区二区三区久久| 亚洲国产97在线精品一区| 国产亚洲日本欧美韩国| 欧美精品日韩三级| 久久国产精品首页| 欧美国产一区二区三区| 国产91露脸中文字幕在线| 亚洲综合色av| 欧美一区二区三区四区在线| 国产精品美女久久久免费| 亚洲精品v欧美精品v日韩精品| 精品亚洲国产视频| 91久久国产精品91久久性色| 欧美日韩视频在线| 欧美第一淫aaasss性| 精品综合久久久久久97| 国产精品99免视看9| 欧美亚洲另类制服自拍| 日韩在线激情视频| 国产一区二中文字幕在线看| 亚洲女人初尝黑人巨大| 国产精品91在线观看| 亚洲精品wwwww| 九九视频这里只有精品| 亚洲综合av影视| 91网站在线免费观看| 国产成人精品国内自产拍免费看| 97久久久久久| 色悠悠国产精品| 91av在线免费观看视频| 欧美日韩加勒比精品一区| 91精品久久久久久久久久久久久久| 国产亚洲精品美女久久久久| 欧美激情久久久久| 疯狂做受xxxx高潮欧美日本| 亚洲欧美制服丝袜| 欧美日韩中文字幕日韩欧美| 欧美小视频在线观看| 亚洲色图五月天| 亚洲精品视频播放| 国产精品久久在线观看| 亚洲裸体xxxx| 亚洲欧洲高清在线| 日韩中文字幕欧美| 欧美性猛交丰臀xxxxx网站| 欧美日韩国产综合视频在线观看中文| 久久久久亚洲精品国产| 日本精品视频在线观看| 欧美成人性生活| 国产精品第1页| 亚洲欧洲美洲在线综合| 美女av一区二区| www.国产精品一二区| 亚洲激情成人网| 国产日韩综合一区二区性色av| 一区二区三区美女xx视频| 欧美极品第一页| 搡老女人一区二区三区视频tv| 国产中文日韩欧美| 日韩在线观看高清| 日韩欧美极品在线观看| 精品视频在线导航|