问题标签 [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.
react-native - react-native Native UI 组件的所有初始道具都已成功加载时的事件?
我正在构建一个 react-native原生 UI 组件:
我正在公开这样的道具:
当我的模块具有所有可用的道具时(也就是当道具已通过 RN 桥成功传输到我的本机 UI 组件时),我需要做一些事情。
有什么我可以观看的事件,还是我必须手动观看每个道具的所有设置器以确保它们已设置?
任何想法,将不胜感激。
谢谢你。
java - 如何从 JAVA 本机 UI 组件发出项目选择事件以响应本机
我在我的本机应用程序中通过本机 UI 组件使用 Android 的 AutoCompleteTextview。我能够传递文本更改事件以响应本机应用程序,但无法传递项目单击事件以响应本机。
这是我的 JAVA 代码
以下是我的反应本机代码
但是当我看到控制台日志时,选择事件不存在。请问这里有什么问题可以指出吗?
react-native - 如何在 Android 中实现一个 React Native UI 组件方法
我很清楚,对于 react-native 原生模块,我们可以使用@ReactMethod
导出一个方法并从 JSX 调用它,但是我们如何在 react-native 原生 UI 组件中做同样的事情呢?
在文档中,我只看到@ReactProp
被提及。如果@ReactMethod
不工作,那么如何从 JSX 访问我的本机 UI 组件的属性呢?(在 iOS 上,这可以在本机 ui 组件上完成,RCT_EXPORT_METHOD
但在 Android 上是类似的可能吗?)
谢谢你。
ios - React Native - RCT_EXPORT_VIEW_PROPERTY 在视图初始化方法中为零
我正在尝试在 iOS 上的 RN 项目上创建本机 UI 组件。我将道具传递uri
给我的 Native 组件。但是当我尝试在init
我认为的方法中使用它时,它是nil
.
uri
在方法nil
中init
但不在onTap
方法中,所以这让我觉得我们不能在 init 方法中使用属性?在这种情况下,我如何用这个 uri 初始化我的图像?有没有办法知道视图是否已初始化?我想过创建一个方法来设置我的图像并在 JS 部分调用它,componentDidMount
但感觉不对。
谢谢你的帮助!
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)
),起初它似乎可以工作,但后来(我猜一旦模块初始化结束??)我得到
有任何想法吗?
android-layout - 原生 UI 组件 - Android 视图更新时刷新
我们正在尝试实现一个原生 UI 组件,它封装了一个 Android 组件,该组件使用我们现有的渲染框架(使用AdapterView
)获取数据并显示它。我们事先并不知道数据会是什么,所以这个组件的高度和内容完全是任意的。这大部分都可以正常工作,除了渲染组件异步请求其他内容(例如图像)的情况。在这种情况下,图像被检索,ImageView
被“显示”,但 UI 最终什么也没有显示(字面意思似乎是适当大小的透明视图)。
我们知道这些视图在普通的 Android 中工作得很好,但我们似乎遗漏了一些东西,告诉 RN/Yoga 在从服务器加载图像时它应该重新渲染,以便正确显示它们。这或多或少是这样的:
在这种情况下LinearLayoutExtension
,包含适配器生成的所有视图,而适配器又将包含异步加载的图像视图。
我们已经尝试了一些事情,比如返回ShadowNode
带有度量函数的 a ,或者保留对 theShadowNode
和调用的引用dirty()
等。
这样做的正确方法是什么?不幸的是,除了“检查回购”之外,我们还没有找到处理真正复杂组件的文档或示例......
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 方法中定义的一样。
有什么建议么?
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
文件。
但是,错误仍然存在。
react-native - 在 Touchable 中 React Native UI 组件包装
我试图检测用户何时按下我编写的自定义 UI 组件(它显示视频源)。我已经尝试使用所有可触摸组件,并且理想情况下希望使用 TouchableWithoutFeedback 组件,但它们都没有检测到我的组件上的压力。此外,当我使用检查器选择我的组件时,我收到错误Expected to find at least one React renderer
,但我不确定如何正确设置我的组件以拥有渲染器。
原生 UI 组件:
我的 UI 组件 Javascript 包装器如下:
我尝试检测新闻:
这是我第一次尝试在 React Native 中实现原生 UI 组件,所以如果我做错了事,请提前道歉。