知识 分享 互助 快乐十分玩法与奖金

    懒人建站专注于网页素材下载,提供网站模板、网页设计、ps素材、图片素材等,服务于【个人站长】【网页设计师】和【web开发从业者】的代码素材与设计素材网站。

    懒人建站提供网页素材下载、网站模板
    知识 分享 互助!

    湖南快乐十分走势图:React Native不同设备分辨率适配和设计稿尺寸单位px的适配

    作者:不吃鱼的猫 2018-02-22 人气:
    React Native不同设备分辨率适配和设计稿尺寸单位px的适配,设计师给的稿子都是按照px像素单位设计的,这个时候我们怎么快速还原设计稿那?下面代码实现React Native设计稿尺寸单位px与pt单位的自动转换适配。

    快乐十分玩法与奖金 www.j63d3.cn React Native不同设备分辨率适配和设计稿尺寸单位px的适配,设计师给的稿子都是按照px像素单位设计的,这个时候我们怎么快速还原设计稿那?

    React Native中使用的尺寸单位是dp(一种基于屏幕密度的抽象单位。在每英寸160点的显示器上,1dp = 1px),而设计师使用的是px, 这两种尺寸如何换算呢?

    官方提供了PixelRatio进行pt到px的转换

    import {PixelRatio} from 'react-native';
    const dp2px = dp=>PixelRatio.getPixelSizeForLayoutSize(dp);
    const px2dp = px=>PixelRatio.roundToNearestPixel(px);

    设计师给你一个尺寸,比如100px*200px的View,按照下面的方式可实现设计还原:

    View style={{width:px2dp(100),height:px2dp(200),backgroundColor:"red"}}

    如果每个地方都这样写会很麻烦,于是我们就有了下面转换代码

    import {PixelRatio,Dimensions}} from 'react-native';
    const dp2px = dp=>PixelRatio.getPixelSizeForLayoutSize(dp);
    const px2dp = px=>PixelRatio.roundToNearestPixel(px);
    let designSize = {width:720,height:1280}; //假设设计尺寸为:720*1280
    let pxRatio = PixelRatio.get();
    let win_width = Dimensions.get("window").width;
    let win_height = Dimensions.get("window").height;
    let width = dp2px(win_width);
    let height = dp2px(win_height);
    let design_scale = designSize.width/width;
    height = height*design_scale
    let scale = 1/pxRatio/design_scale;

    实际使用:

    要在最外层View上设置如下样式:

    const styles = StyleSheet.create({
        container: {
            width: width,
            height: height,
            transform: [{translateX: -width * .5}, {translateY: -height * .5}, {scale: scale}, {translateX: width * .5}, {translateY: height * .5}]
        }
    });

    在后续的开发中将不必再关注适配的问题,只需要按照设计师给的尺寸实现布局即可,比如设计稿中的图片尺寸是300px*300px,你的样式中就写 width: 300,height: 300,

    这里就写设计稿上的300px 300px,不用带单位
    image: {
            width:300,
            height:300
        }

    原文:https://www.jianshu.com/p/7836523b4d20  详细描述可以查看原文

    ↓ 查看全文

    React Native不同设备分辨率适配和设计稿尺寸单位px的适配由懒人建站收集整理,您可以自由传播,请主动带上本文链接

    快乐十分玩法与奖金就是免费分享,觉得有用就多来支持一下,没有能帮到您,懒人也只能表示遗憾,希望有一天能帮到您。

    React Native不同设备分辨率适配和设计稿尺寸单位px的适配-最新评论

  • 金灿荣 美国想遏制中国根本不可能, 我们和苏联不一样! 2018-12-09
  • 到户就不是计划经济,统一经营坚持集体的是计划经济。 2018-11-30
  • 过半美国人希望“特普”会面 以期改善美俄关系 2018-11-24
  • 专家:美方一意孤行 必将损人害己 2018-11-22
  • 【克山天气】最新克山今天天气,实时提供克山气温、空气质量、24小时天气预报、生活指数查询 2018-11-22
  • 每逢佳节酒席多,随不起的份子伤不起的面子 2018-11-20
  • 今年回南天为何掉线了?这其实并不奇怪 2018-11-16
  • 清热-热门标签-华商生活 2018-11-16
  • 服装业华丽转身后面临渠道尴尬 2018-11-12
  • 亲信干政案一审宣判:朴槿惠被判24年监禁 罚款180亿韩元 2018-11-12
  • 国台办主任张志军赴金门参访 2018-11-06
  • 【学习时刻学思践悟十九大⑥】光明日报王丹:中国书写“最成功的脱贫故事” 2018-11-03
  • 天润·西山农牧场亚心网第十届全民植树节举行 2018-11-03
  • 悦读 —频道 春城壹网 七彩云南 一网天下 2018-10-31
  • 做法-热门标签-华商生活 2018-10-28
  • 403| 170| 955| 958| 700| 271| 163| 51| 855| 268|