-
Notifications
You must be signed in to change notification settings - Fork 24.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ActivityIndicator not visible without color prop on Pixel 3a #29495
Labels
Comments
Might be a duplicate of #29378 |
Same bug on OnePlus 5T |
+1 on this issue: |
This was referenced Jul 9, 2021
kelset
pushed a commit
that referenced
this issue
Aug 19, 2021
…or instead of transparent (#29830) Summary: This pr: - Fixes: #30183 - Fixes: #30056 - Fixes: #29950 - Fixes: #29717 - Fixes: #29495 - Fixes: #29412 - Fixes: #29378 Because most of ReactProps(name = ViewProps.COLOR) accept @ Nullable Integer. For example: https://github.com/facebook/react-native/blob/abb6433f506851430dffb66f0dd34c1e70a223fe/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java#L472-L479 After update to react-native 0.63.2 to make PlatformColor work, there is a new ColorPropSetter. https://github.com/facebook/react-native/blob/abb6433f506851430dffb66f0dd34c1e70a223fe/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java#L194-L215 But ColorPropSetter won't return an nullable value with getValueOrDefault, it will always return it's defaultValue which is 0. And 0 is equal to TRANSPARENT, will cause <Text /> disappear. ## Changelog [Android] [Fixed] - ColorProps with value null should be defaultColor instead of transparent Pull Request resolved: #29830 Test Plan: Please initiated a new project and replaced the app with the following code: ``` import * as React from 'react'; import {Text, View, TouchableOpacity, PlatformColor} from 'react-native'; export default function App() { const [active, setActive] = React.useState(false); return ( <View> <Text style={active ? {color: 'green'} : null}>Example</Text> <Text style={ active ? {color: PlatformColor('android:color/holo_purple')} : null }> Example2 </Text> <TouchableOpacity onPress={() => setActive(!active)}> <Text>Toggle Active</Text> </TouchableOpacity> </View> ); } ``` Thanks you so much for your code review! Reviewed By: JoshuaGross Differential Revision: D30209262 Pulled By: lunaleaps fbshipit-source-id: bc223f84a92f742266cb7b40eb26722551940d76
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Labels
Description
The ActivityIndicator is not visible without setting the color prop on Pixel 3a. Setting the animating prop to true does not work either. Running on the Expo snack displays a green ActivityIndicator without the color prop, which was how it behaved in React Native 0.62.2 on the Pixel 3a. I believe this is a device specific issue, but I'm not sure what the scope is.
React Native version: 0.63.2
Device: Pixel 3a
Android version: 10 (QQ3A.200605.002)
react-native info
:Steps To Reproduce
Provide a detailed list of steps that reproduce the issue.
npx react-native init test_app
App.js
with the code belownpm run android
Expected Results
Displaying two green ActivityIndicators (both on Dark and Light modes)
Snack, code example, screenshot, or link to a repository:
Initialize the app and replace
App.js
with the following. For me, the first is not visible, while the second is visible.The text was updated successfully, but these errors were encountered: