android - BorderColor 没有在 android 上选择 linearGradient 颜色

标签 android css react-native colors linear-gradients

我试图创建一个圆圈,里面有一个图像,它的边框是彩色的,这就是我使用 LinearGradient 的原因。

我正在使用这个指南:

https://codeburst.io/linear-gradient-for-border-color-in-react-native-5bcab3eea1c9

在 iOS 中它工作正常的问题,如您在这张图片中所见:

https://imgur.com/a/Tz0uEcC

但是在 android 上,当我使用 borderWidth 并选择透明的 borderColor 时,borderColor 看起来像阴影并且出于某种原因没有选择 LinearGradient 颜色...

这是安卓: https://imgur.com/a/qG1LJBt

我做错了什么?


        <LinearGradient
          colors={['#ac8af8', '#cca5e7']}
          start={{ x: 0.0, y: 1.0 }} end={{ x: 1.0, y: 1.0 }}
          style={styles.profilePhotoContainer}
        >
          <TouchableOpacity onPress={this.handleEditProfileImage.bind(this)}>
            <Image
          style={[styles.profileImage]}
          source={this.state.profilePhoto}
        />
          </TouchableOpacity>
        </LinearGradient>

const styles = StyleSheet.create({
profilePhotoContainer: {
    zIndex: 5,
    position: 'absolute',
    top: Dimensions.get('window').height * .13,
    left: Dimensions.get('window').width / 2 - Dimensions.get('window').width * .13,
    elevation: 4,
    borderRadius: 75,
    borderWidth: 4,
    overflow: "hidden" ,
    borderColor: 'transparent',
  },
profileImage: {
    zIndex: 5,
    width: 100,
    height: 100,
    borderWidth: 1,
    borderColor: 'transparent',
    backgroundColor: '#FFF',
    flex:1,
    resizeMode:'contain',
  },

})

最佳答案

您应该为 TouchableOpacity 添加样式:

style={{
  width: 100,
  height: 100, backgroundColor: 'transparent', overflow: "hidden", borderRadius: 50, flex: 1}}

此外,将 profilePhotoContainer 的样式更改为:

profilePhotoContainer: {
    zIndex: 5,
    position: 'absolute',
    top: Dimensions.get('window').height * .13,
    left: Dimensions.get('window').width / 2 - Dimensions.get('window').width * .13,
    elevation: 4,
    borderRadius: 75,
    padding: 5,
    overflow: "hidden",
    borderColor: 'transparent',
  }

关于android - BorderColor 没有在 android 上选择 linearGradient 颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56331489/

相关文章:

html - 您可以在网站的正文内容中使用多个 css 标签吗?

javascript - 如何在没有浏览器嗅探的情况下支持 transitionend?

javascript - React Native通过Navigator将用户输入数据传递给Tab Bar IOS中的组件

java - 如何使用两个并发线程更新 View Android

android - 选择时更改 Android BottomBar 图标

使用 ffmpeg 的 Android 视频裁剪

javascript - 如何在 React 中克隆子项

android - Android 示例项目出现错误 'No resource identifier found'

html - 如何创建带有固定页脚的 flexbox 设计卡片

javascript - 如何从 React js 中的 State 获取图表 js 饼图的数据?