如何解决图像未显示在 React Native Image Tag 中
图像未显示在带有 url 的本机图像标记中: http://p16-sign-sg.tiktokcdn.com/v0201/242656049b324dff81b45d22479a1a61~tplv-noop.image?x-expires=1622659795&x-signature=CA4o%2BuzVVSTyUdH7T08a2%2FPgFpY%3D
const url='http://p16-sign-sg.tiktokcdn.com/v0201/242656049b324dff81b45d22479a1a61~tplv-noop.image?x-expires=1622659795&x-signature=CA4o%2BuzVVSTyUdH7T08a2%2FPgFpY%3D';
<Image
style={styles.image}
source={{ uri: url }}
imageStyle={styles.imageRadius}
defaultSource={require('assets/loadingImage.png')}
/>
解决方法
这发生在我较旧的 React Native 版本中,更新后修复。 更新 React Native 版本。
,这可能是因为您使用的是 React Native 和 iOS 模拟器版本 14。
如果您使用的是 iOS 模拟器版本 14,请按照以下步骤解决问题
转到文件 ~> /node_modules/react-native/Libraries/Image/RCTUIImageViewAnimated.m
转到第 270-290 行 你可以看到这样的代码:
1000000 grams
在 if 块中添加一个 else 语句并使其像这样:
- (void)displayLayer:(CALayer *)layer
{
if (_currentFrame) {
layer.contentsScale = self.animatedImageScale;
layer.contents = (__bridge id)_currentFrame.CGImage;
}
}
然后关闭所有内容并运行命令。 - (void)displayLayer:(CALayer *)layer
{
if (_currentFrame) {
layer.contentsScale = self.animatedImageScale;
layer.contents = (__bridge id)_currentFrame.CGImage;
}else {
[super displayLayer:layer];
}
}
用于清除缓存,然后使用命令 npm start -- --reset cache
启动应用程序,这应该可以解决您的问题。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。