问题标签 [react-native-native-ui-component]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
319 浏览

react-native - react-native Native UI 组件的所有初始道具都已成功加载时的事件?

我正在构建一个 react-native原生 UI 组件

我正在公开这样的道具:

当我的模块具有所有可用的道具时(也就是当道具已通过 RN 桥成功传输到我的本机 UI 组件时),我需要做一些事情。

有什么我可以观看的事件,还是我必须手动观看每个道具的所有设置器以确保它们已设置?

任何想法,将不胜感激。

谢谢你。

0 投票
0 回答
582 浏览

java - 如何从 JAVA 本机 UI 组件发出项目选择事件以响应本机

我在我的本机应用程序中通过本机 UI 组件使用 Android 的 AutoCompleteTextview。我能够传递文本更改事件以响应本机应用程序,但无法传递项目单击事件以响应本机。

这是我的 JAVA 代码

以下是我的反应本机代码

但是当我看到控制台日志时,选择事件不存在。请问这里有什么问题可以指出吗?

0 投票
2 回答
3355 浏览

react-native - 如何在 Android 中实现一个 React Native UI 组件方法

我很清楚,对于 react-native 原生模块,我们可以使用@ReactMethod导出一个方法并从 JSX 调用它,但是我们如何在 react-native 原生 UI 组件中做同样的事情呢?

在文档中,我只看到@ReactProp被提及。如果@ReactMethod不工作,那么如何从 JSX 访问我的本机 UI 组件的属性呢?(在 iOS 上,这可以在本机 ui 组件上完成,RCT_EXPORT_METHOD但在 Android 上是类似的可能吗?)

谢谢你。

0 投票
1 回答
1620 浏览

ios - React Native - RCT_EXPORT_VIEW_PROPERTY 在视图初始化方法中为零

我正在尝试在 iOS 上的 RN 项目上创建本机 UI 组件。我将道具传递uri给我的 Native 组件。但是当我尝试在init我认为的方法中使用它时,它是nil.

uri在方法nilinit但不在onTap方法中,所以这让我觉得我们不能在 init 方法中使用属性?在这种情况下,我如何用这个 uri 初始化我的图像?有没有办法知道视图是否已初始化?我想过创建一个方法来设置我的图像并在 JS 部分调用它,componentDidMount但感觉不对。

谢谢你的帮助!

0 投票
1 回答
1162 浏览

android - 我应该使用哪个线程来调用 react-native 本机 ui 组件中的 uiManager 调用?

我正在为 Android 构建一个原生 UI 组件,它使用扩展ReactRootView.

SyncRootView如果我检查我得到的线程,那么在我的视图(名为)的构造函数上,Thread curThread = Thread.current(); // main 我们在主线程上。

问题是,如果我尝试运行任何uiManager调用(例如uiManager.createView,我收到该错误:

所以基本上问题是一个名为SingleThreadAsserter的类react-native,我什至不确定它为什么在那里。它的mThread值设置为,native_module_thread...因此我得到一个,AssertionError因为我在主线程上。

如果我尝试uiManager在 native_module 线程上运行这些调用(通过使用ctx.runOnNativeModulesQueueThread(myRunnable)),起初它似乎可以工作,但后来(我猜一旦模块初始化结束??)我得到

有任何想法吗?

0 投票
1 回答
728 浏览

android-layout - 原生 UI 组件 - Android 视图更新时刷新

我们正在尝试实现一个原生 UI 组件,它封装了一个 Android 组件,该组件使用我们现有的渲染框架(使用AdapterView)获取数据并显示它。我们事先并不知道数据会是什么,所以这个组件的高度和内容完全是任意的。这大部分都可以正常工作,除了渲染组件异步请求其他内容(例如图像)的情况。在这种情况下,图像被检索,ImageView被“显示”,但 UI 最终什么也没有显示(字面意思似乎是适当大小的透明视图)。

我们知道这些视图在普通的 Android 中工作得很好,但我们似乎遗漏了一些东西,告诉 RN/Yoga 在从服务器加载图像时它应该重新渲染,以便正确显示它们。这或多或少是这样的:

在这种情况下LinearLayoutExtension,包含适配器生成的所有视图,而适配器又将包含异步加载的图像视图。

我们已经尝试了一些事情,比如返回ShadowNode带有度量函数的 a ,或者保留对 theShadowNode和调用的引用dirty()等。

这样做的正确方法是什么?不幸的是,除了“检查回购”之外,我们还没有找到处理真正复杂组件的文档或示例......

0 投票
1 回答
453 浏览

ios - 如何操作 React Native - Native UI 组件的属性?

我正在开发一个 React Native 应用程序。

该应用程序由基于 Web 的视图和本机 ui 视图(组件)组成。

虽然基于 Web 的视图和本机 ui 视图的渲染工作正常,但我无法操作本机 ui 视图的属性,例如背景颜色。

我不得不说我的项目结构并不是那么简单,因为我做了很多桥接,从 React 到 Objective-C,从 Objective-C 到 Swift 等等。

简单介绍一下我的项目结构:

我的UIView.h

我的UIView.m

MyUIManager.h

MyUIManager.m

MyViewController.swift

我期望的是,从我的 Swift 类调用 changeColor 方法会改变我本机 ui 视图的颜色,因为 myUIManager 的 changeBackgroundColor 是在设置颜色的地方调用的。不过颜色确实变了。它保持灰色,就像在 MyUIView.m 的 setUp 方法中定义的一样。

有什么建议么?

0 投票
1 回答
974 浏览

xcode - 为什么 React Native 链接会导致工作空间完整性错误?

我在开发 React Native 应用程序时遇到了麻烦。

我开发了一个原生模块和一个原生 ui 组件。

最后,我想将两者都发布为 NPM 模块。

但是,当我尝试将本机模块和本机 ui 作为 NPM 包集成到(新)React Native 应用程序(例如使用react-native init命令创建)中时,我首先收到以下错误Invariant Violation requireNativeComponent ComponentName was not found in UIManager。根据一些 GitHub 问题,这可能是缺少链接的问题。

所以我决定跑步react-native link。但是,通过这样做,情况变得更糟,因为从那时起,Workspace Integrity Error - Couldn't load project所有 RCT 库都出现以下错误。

错误信息

我已经按照有关该主题的其他 Stackoverflow 帖子的说明进行了操作,其中描述了如何调查该.pbxproj文件。此外,我尝试重新安装我的 npm 包的 pod。最后,我确保我使用的是.xcworkspace文件而不是.xcodeproj文件。

但是,错误仍然存​​在。

0 投票
1 回答
361 浏览

react-native - 在 Touchable 中 React Native UI 组件包装

我试图检测用户何时按下我编写的自定义 UI 组件(它显示视频源)。我已经尝试使用所有可触摸组件,并且理想情况下希望使用 TouchableWithoutFeedback 组件,但它们都没有检测到我的组件上的压力。此外,当我使用检查器选择我的组件时,我收到错误Expected to find at least one React renderer,但我不确定如何正确设置我的组件以拥有渲染器。

原生 UI 组件:

我的 UI 组件 Javascript 包装器如下:

我尝试检测新闻:

这是我第一次尝试在 React Native 中实现原生 UI 组件,所以如果我做错了事,请提前道歉。

0 投票
2 回答
796 浏览

ios - Native UI Component throws Invariant Violation: 试图注册两个同名的视图 FridgeCameraView

尝试学习 React Native 自定义 Native UI 组件。

.

.

当我尝试在 App.js 中的某处使用 FridgeCameraView 组件时,它仅在我使用 Xcode 构建和运行项目时才有效。否则,在更改某些内容时使用热重载,我得到“不变违规:试图注册两个同名的视图 FridgeCameraView”。

在此处输入图像描述