React Native (iOS) 中只在 <Text/> 组件的一侧添加边框

IT技术 ios reactjs react-native react-native-text
2021-04-29 15:11:57

<Text/>iOS 中遇到了 React-Native组件的一些奇怪问题

我想将borderBottomWidth样式应用<Text/>组件中,但它不起作用。但是,该borderWidth选项有效

  • 工作过 <Text style={{borderWidth:1}}> React Native </Text>

  • 没有工作 <Text style={{borderBottomWidth:1}}> React Native </Text>


有没有办法只将底层边框应用到<Text/>组件中?

谢谢!


笔记:

我知道以下提到的方法可以实现这一点,但在我的情况下,我只需要将样式应用于<Text/>组件。

  1. 我们可以尝试包装<View/><Text/>并将borderBottomWidth样式应用于<View/>borderBottomWidth工作正常<View/>
  2. 将此类添加<View/><Text/>看起来像一条线组件的下方
3个回答

尽管 borderBottom 在 Text 组件上不起作用,但它在 TextInput 组件上确实对我有用,只需将 editable 设置为 false 并将值设置为您想要的文本...

<TextInput
    style={styles.textInput}
    editable={false}
    value={'My Text'}/>

const styles = StyleSheet.create({
    textInput: {
        borderBottomColor: 'black',
        borderBottomWidth: 1,
    }
});

这目前是不可能的。请参阅以下 RN 问题:https : //github.com/facebook/react-native/issues/29以及关于 Product Pains 的这张票:https : //productpains.com/post/react-native/add-borderwidth-left-右上-下至文本输入-/

我们现在可以使用:

const styles = StyleSheet.create({
    textZone: {        
        borderTopRightRadius: 10,
        borderTopLeftRadius: 10,
        borderBottomRightRadius: 10,
        borderBottomLeftRadius: 10
    },
})