我目前使用的是 RN 41.2,我对从 url 调整图像大小有疑问。url 文件可能会变得非常大,通常在 2000x2000 左右,我想将它们显示得更小,大概在 25x25 左右。
'android only' resizeMethod 是否有等效的 iOS Image 道具?
当 resizeMethod='resize' 时,它会在解码前更改大编码图像的大小,因此图像几乎立即以较小的尺寸显示,这很棒。
但是对于iOS,我使用resizeMode(包含,封面等)并且它正确显示图像,但图像实际显示总是需要一些时间,这是完全可以理解的,只是很烦人。
我在这里错过了什么吗?似乎 resizeMode 应该做与 resizeMethod 相同的事情,但显然没有
image react-native react-native-android react-native-ios react-native-image
我正在构建一个应用程序,让用户在单击按钮时下载 PDF 文件。
为此,我使用了库 react-native-fetch-blob。
它在 Android 上运行良好。
在 iOS 上,控制台日志告诉我下载运行良好,但是:
实现我想要的目标的正确方法是什么?
我正在开发一个 React Native (0.45.0) 应用程序,并且在几个小时内我的应用程序崩溃(或者更确切地说是被看门狗杀死)0x8badf00d。我明白为什么看门狗会杀死应用程序;主线程需要超过 20 秒来响应一个事件。但我不知道如何在 React Native 中调试它。一切都在 Javascript 和 promises 中,所以我假设我正在做的网络执行已经是异步的。
该应用程序似乎只是在后台崩溃。但是,崩溃报告角色状态为前景。我们正在使用后台获取和后台地理定位,它们都执行网络请求。我测量了从事件触发到完成的时间,总共不超过一秒。
我读到发生此错误的最常见问题是对主要威胁的网络请求。会不会是它尝试同步加载js包并挂起?当我的所有代码都在 Javascript 中时,如何调试此问题?
非常感谢您提前。
Incident Identifier: 36E63A5F-7C40-40C0-9914-2C9EAE494C11
Beta Identifier: 3C432B54-1947-470E-A387-6566A494E145
Hardware Model: iPhone7,2
Process: [993]
Path: /private/var/containers/Bundle/Application/70B3363C-32E9-4D26-B6C6-DB51304D46C7/.app/
Identifier: org.reactjs.native.example.Test3
Version: 20 (1.4)
Beta: YES
Code Type: ARM-64 (Native)
Role: Foreground
Parent Process: launchd [1]
Coalition: org.reactjs.native.example.Test3 [703]
Date/Time: 2017-07-17 21:31:33.1931 -0400
Launch Time: 2017-07-17 19:18:30.9574 -0400
OS Version: iPhone OS 10.3.2 (14F89)
Report Version: 104
Exception Type: EXC_CRASH (SIGKILL)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: …Run Code Online (Sandbox Code Playgroud) 在iOS上使用React Native获取异常时,我会在白色背景下显示此错误屏幕.您可以通过tapped单元格看到它实际上有异常堆栈,只有白色背景.不确定为什么会发生,但有没有办法解决?在Android上,屏幕有红色背景(因此按预期工作.)
运行React Native 0.48.3.
当用户选择语言时,我试图在运行时更改我的应用程序的语言。我正在尝试这样做
import I18n from 'react-native-i18n'
onChangeLanguage = () => {
console.log('String before change : >>> ', I18n.t('welcome'))
I18n.locale = 'hi'
console.log('String after change : >>> ', I18n.t('welcome'))
}
Run Code Online (Sandbox Code Playgroud)
在两个日志中,我得到了相同的 string 。我从这里参考。在此参考中,有一个使用 redux 的示例,但我的用例是使用 mobx。如果语言更改了如何重新渲染组件以反映语言更改。
android react-native mobx react-native-android react-native-ios
父组件将通过数据库调用接收到的数据传递给子组件。
我正在呈现的子组件的代码如下:
import React, { Component } from 'react'
import { Image, View, Text } from 'react-native'
class ListItem extends Component {
render () {
const { name, image } = this.props.item
return <View>
<Image
style={{ width: 50, height: 50 }}
source={{ uri: image }} />
<Text>
{name}
</Text>
</View>
}
}
export default ListItem
Run Code Online (Sandbox Code Playgroud)
使用上面的代码,虽然 50 x 50 元素确实占用了空间(使用检查器看到),但没有显示图像。
被测试的 URL 工作正常,图像在硬编码时显示在应用程序中:
source={{ uri: 'test URL here' }}
我还习惯于在调用之前console.log检查该image道具是否存在return。一切都表明 URL(即imageprop)已经存在于数据库调用中。
附带说明一下,我最初使用的是 …
javascript react-native react-native-ios react-native-flatlist
Ive启用了深层链接,当应用程序打开时,一切正常。当我使用url moderatorapp:// hello从关闭状态打开应用程序时,它会记录正确的url,但是当从后台状态打开应用程序时,如果应用程序被深层链接,则它将无法正常工作。我的代码如下:
componentDidMount() {
// Storage.clear();
Storage.getItem('data_moderator')
.then(_data => {
if (_data && _data.tokens) {
this.autoLogin(_data.tokens);
} else {
Actions.loginForm();
}
}
);
Linking.getInitialURL()
.then(url => {
console.log('Initial Url then ', url);
if (url) {
console.log('Initial Url ', url);
}
})
.catch(error => console.log(error));
Linking.addEventListener('url', this.handleOpenURL);
}
Run Code Online (Sandbox Code Playgroud)
显然这是因为此时未调用componentDidMount方法。
我尝试过的
我试图将链接代码包装到一个事件中,该事件检测到应用程序进入活动状态并且不起作用,它记录了与应用程序关闭时的初始尝试相同的URL。当我尝试使用url moderatorapp:// goodbye从后台状态深入链接到应用程序时,它将记录moderatorapp:// hello。因此,它不知何故没有更新。
AppState.addEventListener('change', (state) => {
if (state === 'active') {
console.log('state active');
Linking.getInitialURL()
.then(url => {
console.log('Initial Url then ', url);
if (url) {
console.log('Initial Url ', …Run Code Online (Sandbox Code Playgroud) 我已经研究了很长时间,没有一种解决方案似乎可行。例如:iOS 10上Force软件键盘中引用的文章
我们的蓝牙条形码扫描仪具有一个按钮,该按钮可以上/下按下软/虚拟键盘,但这绝对不如专注于文本输入时弹出键盘那样方便用户使用。
无论如何,iOS上是否可以同时容纳虚拟/软键盘和蓝牙键盘输入?谢谢!
我们还研究了这种看似有希望的方法,当连接蓝牙输入设备时显示软键盘(iPad), 但它需要导入专用框架,而较新的XCode则不支持这种框架,并且不支持App Store吗?
barcode-scanner ios ios-bluetooth react-native react-native-ios
如何在本机中验证手机号码接受唯一的数值。
<TextInput
ref='mobileNo'
keyboardType="numeric"
style={[styles.textInput, { width: '100%' }]}
placeholder='Enter mobile number'
onChangeText={(value) => this.handleChange('mobileNo', value)} />
Run Code Online (Sandbox Code Playgroud)
我已经使用过,keyboardType="numeric"但是它也接受特殊字符,因此我想接受唯一的数值。
javascript reactjs react-native react-native-android react-native-ios
最新的react / react-native更新。从今天早上开始,将我的应用程序部署到appleStore从来没有问题。挣扎了几个小时。这是我尝试Product-> Archive时收到的错误消息:
Ld /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/IntermediateBuildFilesPath/LesSherpas.build/Release-iphoneos/LesSherpas.build/Objects-normal/arm64/LesSherpas normal arm64 (in target: LesSherpas)
cd /Users/angeliquesherpa/Terry/sherpas_mobile_app/ios
export IPHONEOS_DEPLOYMENT_TARGET=9.0
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk -L/Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/BuildProductsPath/Release-iphoneos -F/Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/BuildProductsPath/Release-iphoneos -filelist /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/IntermediateBuildFilesPath/LesSherpas.build/Release-iphoneos/LesSherpas.build/Objects-normal/arm64/LesSherpas.LinkFileList -Xlinker -rpath -Xlinker @executable_path/Frameworks -miphoneos-version-min=9.0 -dead_strip -Xlinker -object_path_lto -Xlinker /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/IntermediateBuildFilesPath/LesSherpas.build/Release-iphoneos/LesSherpas.build/Objects-normal/arm64/LesSherpas_lto.o -fembed-bitcode -Xlinker -bitcode_verify -Xlinker -bitcode_hide_symbols -Xlinker -bitcode_symbol_map -Xlinker /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/BuildProductsPath/Release-iphoneos -Xlinker -final_output -Xlinker /Applications/LesSherpas.app/LesSherpas -fobjc-arc -fobjc-link-runtime -ObjC -lc++ /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/BuildProductsPath/Release-iphoneos/libRCTBlob.a /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/BuildProductsPath/Release-iphoneos/libRCTAnimation.a /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/BuildProductsPath/Release-iphoneos/libReact.a /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/BuildProductsPath/Release-iphoneos/libRCTActionSheet.a /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/BuildProductsPath/Release-iphoneos/libRCTGeolocation.a /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/BuildProductsPath/Release-iphoneos/libRCTImage.a /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/BuildProductsPath/Release-iphoneos/libRCTLinking.a /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/BuildProductsPath/Release-iphoneos/libRCTNetwork.a /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/BuildProductsPath/Release-iphoneos/libRCTSettings.a /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/BuildProductsPath/Release-iphoneos/libRCTText.a /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/BuildProductsPath/Release-iphoneos/libRCTVibration.a /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/BuildProductsPath/Release-iphoneos/libRCTWebSocket.a -lRNVectorIcons -lRNImagePicker -lRCTOneSignal -lFastImage -lRNGestureHandler -lBVLinearGradient -Xlinker -dependency_info -Xlinker /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/IntermediateBuildFilesPath/LesSherpas.build/Release-iphoneos/LesSherpas.build/Objects-normal/arm64/LesSherpas_dependency_info.dat -o /Users/angeliquesherpa/Library/Developer/Xcode/DerivedData/LesSherpas-exmzjsfkzoxzwcehsbzxjyhztxsa/Build/Intermediates.noindex/ArchiveIntermediates/LesSherpas/IntermediateBuildFilesPath/LesSherpas.build/Release-iphoneos/LesSherpas.build/Objects-normal/arm64/LesSherpas
Undefined symbols for architecture arm64: …Run Code Online (Sandbox Code Playgroud) react-native ×10
react-native-ios ×10
javascript ×4
ios ×3
android ×1
image ×1
mobx ×1
reactjs ×1
xcode ×1