在 UIManager 中找不到 BVLinearGradient?

问题描述 投票:0回答:12

有相关文档,但仅适用于 macOS。 https://github.com/react-native-community/react-native-linear-gradient.

我通过运行

npm install react-native link react-native-linear-gradient
链接了库。

我不明白这一点,我没有 ios 文件夹,我安装了 pod,但我的 ios 文件夹仍然是空的:

iOS 对于 React Native >= 0.60.0,在 ios/ 文件夹中运行以下命令并跳过本节的其余部分。

吊舱安装 可可豆荚 将以下行添加到您的 Podfile 中:

pod 'BVLinearGradient', :path => '../node_modules/react-native-线性梯度' 或:

以下仅适用于 macOS ?

手动 在 Xcode 中打开您的项目,右键单击“库”,然后单击“将文件添加到“您的项目名称””。在 node_modules/react-native-线性-gradient/ios 下查找并添加 BVLinearGradient.xcodeproj。 (屏幕截图 1)(屏幕截图 2)。 将 libBVLinearGradient.a 添加到构建阶段 -> 将二进制文件与库链接(屏幕截图 1)(屏幕截图 2)。 单击“库”中的 BVLinearGradient.xcodeproj,然后转到“构建设置”选项卡。双击标题搜索路径右侧的文本并验证它是否有 $(SRCROOT)/../react-native/React - 如果没有,则添加它。这样 Xcode 就能够通过指向react-native node_modules 目录中安装的头文件来找到 BVLinearGradient 源文件所引用的头文件。 (截图)。

如何在 Windows 中执行此操作,而我在 node_modules/react-native-linear-gradient/ 中没有 ios 地图?

我怎样才能让它发挥作用?

感谢您的宝贵时间

react-native gradient
12个回答
40
投票

如果您正在使用 expo

,请使用这个

1 .将其粘贴到终端窗口中:

expo install expo-linear-gradient

2.将导入语句添加到文件中:

import {LinearGradient} from 'expo-linear-gradient';

为我工作!


6
投票

检查这两行是否在你的“包文件”中。

'React', :path => '../node_modules/react-native'

'BVLinearGradient', :路径 => '../node_modules/react-native-线性梯度'

如果是的话——

在react-native run-ios之前在$project path/ios下运行“pod install”。

干杯!!


4
投票

我在 Android 上也遇到了类似的问题。 解决方案:终止应用程序并重新启动这应该可以解决问题


2
投票

简单的方法..!试试这个..!

  1. 在终端窗口中运行此代码

    expo安装expo-线性渐变

  2. 使用此代码导入 LinearGradient

    从“expo-线性梯度”导入{LinearGradient};


1
投票

只需进入 ios 文件夹

cd ios
pod install

就是这样


1
投票

首先,安装 https://github.com/react-native-community/react-native-linear-gradient 库。

然后进入cd ios并运行

cd ios
pod install

现在使用 cd 返回..

并运行(可选)

 react-native link react-native-linear-gradient

现在就跑吧

react-native run-ios

1
投票

安卓

如果您使用的是 Android,只需使用以下命令再次进行本机重建:

yarn android

npm run android

0
投票

如果使用expo并且在安装react-native-linear-gradient后抛出此错误,请继续操作。

错误?expo框架仍然没有“看到”线性渐变包。

解决方案?从根文件夹运行命令“expo install expo-linear-gradient”,转到之前导入线性渐变的文件“import LinearGradient from 'react-native-linear-gradient”并更改“从‘expo-linear-gradient’导入{LinerGradient}”这一行。

重新启动服务器,“expo start”。 PS:该解决方案仅适用于使用expo构建的react-native项目


0
投票

如果您使用的是 Windows 和 React-native cli(不是 expo):

1-android/settings.gradle 中,检查是否

包括':react-native-线性梯度' 项目(':react-native-线性梯度').projectDir = new File(rootProject.projectDir,'../node_modules/react-native-线性梯度/android')

存在..如果不存在,添加它们


2-android/app/build.gradle 中,检查是否

implementation project(':react-native-linear-gradient')

存在于依赖项{ ... } ..如果不存在,则添加它


3-android/app/src/main/java/com/{YOUR_APP_NAME}/MainApplication.java 中,找到

@覆盖 受保护列表 getPackages() { ....}

然后替换注释//packages.add(new MyReactNativePackage());

与=> packages.add(new LinearGradientPackage());


0
投票
  • cd iOS
  • 捆绑安装
  • 捆绑执行 pod 安装

0
投票
  • 步骤 1 - npm install expo-linear-gradient
  • setp 2 - 从 expo-linear-gradient 导入 { LinearGradient }

0
投票

简单使用expo命令。

  • npm 安装 expo-线性渐变

在页面上使用它

  • 从“expo-线性梯度”导入{LinearGradient};
© www.soinside.com 2019 - 2024. All rights reserved.