标签:
静态图片资源
当React Native0.14版本发布的时候,它为iOS和Android应用提供了一个统一的管理图片的方法。增加静态图片到你的app, 然后到你的源码树中引用它,如:
1 <Image source={require(‘./my-icon.png‘)} />
图片的名称问题的解决方法跟JS模块的解决方法一致。 在上面的例子中,packager将会请求它的组件的相同目录中寻找my-icon.png。如果你同时有
my-icon.ios.png和
my-icon.android.png
, packager将会视你所运行的平台来决定获取哪一张图片。
你也能使用@2x
, @3x等。
它们为不同的屏幕分辨率提供图片。 例如你有下面的文件结构:
1 . 2 ├── button.js 3 └── img 4 ├── check@2x.png 5 └── check@3x.png
button.js
代码包含下面:
1 <Image source={require(‘./img/check.png‘)} />
Packager将会自动根据屏幕分辨率匹配,例如,在iPhone 5s就会选择check@2x.png
, 在Nexus 5会选check@3x.png。如果没有图片匹配这屏幕分辨率,就会选择最接近最好的。
一些益处:
注意: 为了能够正常工作,在require中的图片名称必须是静态的
1 // GOOD 2 <Image source={require(‘./my-icon.png‘)} /> 3 4 // BAD 5 var icon = this.props.active ? ‘my-icon-active‘ : ‘my-icon-inactive‘; 6 <Image source={require(‘./‘ + icon + ‘.png‘)} /> 7 8 // GOOD 9 var icon = this.props.active ? require(‘./my-icon-active.png‘) : require(‘./my-icon-inactive.png‘); 10 <Image source={icon} />
标签:
原文地址:http://www.cnblogs.com/GeekStar/p/5194011.html