我试图设置 borderRadius ,但它将适用于整个图像而不是底部。
这是我的代码:
<View
style={{
backgroundColor: ‘transparent’,
justifyContent: ‘center’,
alignItems: ‘center’,
height: 159,
width: '100%',
borderBottomWidth: 70,
borderBottomColor: ‘red’,
borderBottomRightRadius: 800,
borderBottomLeftRadius: 800,
}}
/>
它将提供如下输出:
我需要设置哪个属性才能在视图底部进行完美回合?
答案 0 :(得分:2)
你可以在它上面添加一个透明的png框架
你也可以查看它可能会有所帮助the-shapes-of-react-native
<强>更新强>
这是我通过代码
管理的方式首先创建此结构
render() {
return(
<View style={styles.container} >
<View style={styles.background} >
<Image style={styles.image} source={require('./image.jpeg')} />
</View>
</View>
);
}
然后应用此样式
const styles = {
container: {
alignSelf: 'center',
marginTop: 100,
width: 200,
overflow: 'hidden', // for hide the not important parts from circle
margin: 10,
height: 100,
},
background: { // this shape is a circle
borderRadius: 400, // border borderRadius same as width and height
width: 400,
height: 400,
marginLeft: -100, // reposition the circle inside parent view
position: 'absolute',
bottom: 0, // show the bottom part of circle
overflow: 'hidden', // hide not important part of image
},
image: {
height: 100, // same width and height for the container
width: 200,
position: 'absolute', // position it in circle
bottom: 0, // position it in circle
marginLeft: 100, // center it in main view same value as marginLeft for circle but positive
}
}
这是结果
答案 1 :(得分:0)
您可以查看我的存储库,如果它可以帮助您
https://github.com/paraswatts/React_Native_Custom_shape_image_view/tree/master
有一个抓住我挤压了图像的宽度,然后在X轴上缩放
答案 2 :(得分:0)
使用@Mohamed Khalil提到的方法,
const styles = StyleSheet.create({
containerStyle: {
alignSelf: 'center',
width: window.width,
overflow: 'hidden',
height: window.width / 1.7
},
sliderContainerStyle: {
borderRadius: window.width,
width: window.width * 2,
height: window.width * 2,
marginLeft: -(window.width / 2),
position: 'absolute',
bottom: 0,
overflow: 'hidden'
},
slider: {
height: window.width / 1.7,
width: window.width,
position: 'absolute',
bottom: 0,
marginLeft: window.width / 2,
backgroundColor: '#9DD6EB'
}});
结果如下。我在这里使用了Dimensions
(const window = Dimensions.get('window');
)来使其对不同的屏幕尺寸更具动态性。