我想做一个网上商店,我需要一个本地反应的水平部分列表,其中包含我的产品。这是我的代码。请帮助我从右向左滚动。衣服是包含我的产品详细信息的一组对象。
export default class MySectionList extends Component{
render(){
return(
<SectionList
sections={Clothes}
horizontal={true}
showsHorizontalScrollIndicator={false}
renderItem={({item})=>(
<View>
<Image source={{uri:"item.image",width:'65%',height:200}}/>
<Text>{item.name}</Text>
<Text>{item.price}</Text>
</View>
)}
renderSectionHeader={({section})=>(
<Text>{section.title}</Text>)}
/>
)
}
}
此sectionList从左向右滚动,而我还需要从左向右滚动。
答案 0 :(得分:3)
我通过添加一些样式来解决此问题。不幸的是,I18NManager无法解决我的问题,因此我使用了transform
样式,并且我对transform: [{ scaleX: -1 }]
应用了所有节列表,并且由于节列表中的项目将被颠倒,因此我再次将此样式应用于项目包装器。像这样的东西:
render(){
return(
<SectionList
sections={Clothes}
horizontal={true}
style={{ transform: [{ scaleX: -1 }] }}
showsHorizontalScrollIndicator={false}
renderItem={({item})=>(
<View style={{ transform: [{ scaleX: -1 }] }}>
<Image source={{uri:"item.image",width:'65%',height:200}}/>
<Text>{item.name}</Text>
<Text>{item.price}</Text>
</View>
)}
renderSectionHeader={({section})=>(
<Text>{section.title}</Text>)}
/>
)
}
}
这是一种骇人听闻的方法,但是我没有找到解决我问题的另一种方法。
我希望这可以帮助您
答案 1 :(得分:1)
如果您的应用语言从右到左,请设置应用支持以将rtl与
结合使用I18NManager.allowRTL(true)
I18NManager.forceRTL(true)
使部分列表或平面列表从右向左滚动,否则不会发生。还有另一种方法可以解决此问题,但这不是系统的!喜欢使用inverted
道具或direction
样式。