标签: react-native-ios

React Native Image resizeMode vs resizeMethod

我目前使用的是 RN 41.2,我对从 url 调整图像大小有疑问。url 文件可能会变得非常大,通常在 2000x2000 左右,我想将它们显示得更小,大概在 25​​x25 左右。

'android only' resizeMethod 是否有等效的 iOS Image 道具?

当 resizeMethod='resize' 时,它会在解码前更改大编码图像的大小,因此图像几乎立即以较小的尺寸显示,这很棒。

但是对于iOS,我使用resizeMode(包含,封面等)并且它正确显示图像,但图像实际显示总是需要一些时间,这是完全可以理解的,只是很烦人。

我在这里错过了什么吗?似乎 resizeMode 应该做与 resizeMethod 相同的事情,但显然没有

image react-native react-native-android react-native-ios react-native-image

5
推荐指数
1
解决办法
4603
查看次数

使用 React Native 在 iOS 上下载文件

我正在构建一个应用程序,让用户在单击按钮时下载 PDF 文件。

为此,我使用了库 react-native-fetch-blob。

它在 Android 上运行良好。

在 iOS 上,控制台日志告诉我下载运行良好,但是:

  • 我在屏幕上看不到任何事情(在 Android 上,有一个通知告诉我下载已完成)
  • 我在 iPad 上的任何地方都找不到该文件。没有“我的文件”文件夹或等效文件夹。

实现我想要的目标的正确方法是什么?

ios react-native react-native-ios react-native-fetch-blob

5
推荐指数
1
解决办法
2094
查看次数

React 原生 iOS 中的 0x8badf00d

我正在开发一个 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)

javascript ios react-native react-native-ios

5
推荐指数
0
解决办法
709
查看次数

错误屏幕有白色背景

在iOS上使用React Native获取异常时,我会在白色背景下显示此错误屏幕.您可以通过tapped单元格看到它实际上有异常堆栈,只有白色背景.不确定为什么会发生,但有没有办法解决?在Android上,屏幕有红色背景(因此按预期工作.)

运行React Native 0.48.3.

反应原生异常屏幕

react-native react-native-ios

5
推荐指数
1
解决办法
668
查看次数

使用 react native i18n 更改 react native 应用程序中的语言不起作用

当用户选择语言时,我试图在运行时更改我的应用程序的语言。我正在尝试这样做

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

5
推荐指数
0
解决办法
1621
查看次数

React Native - 图像组件不接受源 URI 属性的变量

父组件将通过数据库调用接收到的数据传递给子组件。

我正在呈现的子组件的代码如下:

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

5
推荐指数
1
解决办法
1157
查看次数

从后台打开本机深层链接应用程序

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)

javascript react-native react-native-ios

5
推荐指数
1
解决办法
2051
查看次数

如何在连接到iOS上的React Native的蓝牙键盘/条形码扫描仪时启用虚拟/软键盘?

我已经研究了很长时间,没有一种解决方案似乎可行。例如:iOS 10上Force软件键盘中引用的文章

我们的蓝牙条形码扫描仪具有一个按钮,该按钮可以上/下按下软/虚拟键盘,但这绝对不如专注于文本输入时弹出键盘那样方便用户使用。

无论如何,iOS上是否可以同时容纳虚拟/软键盘和蓝牙键盘输入?谢谢!

我们还研究了这种看似有希望的方法,当连接蓝牙输入设备时显示软键盘(iPad), 但它需要导入专用框架,而较新的XCode则不支持这种框架,并且不支持App Store吗?

barcode-scanner ios ios-bluetooth react-native react-native-ios

5
推荐指数
0
解决办法
342
查看次数

React Native:手机号码验证仅接受数字值

如何在本机中验证手机号码接受唯一的数值。

 <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

5
推荐指数
3
解决办法
1万
查看次数

Xcode Archive构建因响应本机项目而失败

最新的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)

xcode react-native react-native-ios

5
推荐指数
1
解决办法
4017
查看次数