Android 在 FlatList (React Native) 中隐藏滚动条
Hide scrollbar in FlatList (React Native) in Android
我正在尝试在我的应用程序中使用 FlatList (React-native)。我水平使用它并且可以看到滚动条。 ScrollView 中有一个选项可以隐藏滚动条,但 FlatList 中没有。有没有人能够以其他方式隐藏它。我尝试使用父子容器(Hide scroll bar, but still being able to scroll)的解决方案但没有用。
import React, { Component } from 'react';
import { Text, View, FlatList, StyleSheet, ScrollView } from 'react-native';
import { Card, Button } from 'react-native-elements';
const data = [
{ id: 1, title: 'title 1', details: 'details 1 details 1 details 1' },
{ id: 2, title: 'title 2', details: 'details 2 details 2 details 2 details 2 details 2 details 2' },
{ id: 3, title: 'title 3', details: 'details 3 details 3' },
{ id: 4, title: 'title 4 title 4', details: 'details 4' },
];
class CategoryRow extends Component {
_keyExtractor = (item, index) => item.id;
_renderItem = (item) => {
return (
<Card style={styles.cardContainer}>
<Text>{item.title}</Text>
<Text>{item.details}</Text>
</Card>
);
}
render() {
return (
<View style={{ flex: 1, overflow:'hidden' }}>
<View style={{ overflow:'hidden' }}>
<Text>Category 1</Text>
<FlatList
horizontal
data={data}
renderItem={({ item }) => this._renderItem(item)}
keyExtractor={this._keyExtractor}
/>
</View>
</View>
);
}
}
const styles = StyleSheet.create({
cardContainer: {
width: 140,
height: 150,
borderWidth: 0.5,
borderColor: 'grey',
overflow: 'scroll',
},
})
export default CategoryRow;
只需添加
showsHorizontalScrollIndicator={false}
试试下面提到的 ListView 水平添加 (horizontal={true}),如果您只想隐藏滚动条,只需添加 (showsHorizontalScrollIndicator={false})
<ListView showsHorizontalScrollIndicator={false}
horizontal={true}
/>
如果您想隐藏垂直滚动条,请使用:
showsVerticalScrollIndicator={false}
禁用垂直和水平滚动指示器
<ScrollView
showsVerticalScrollIndicator={false}
showsHorizontalScrollIndicator={false}
/>
隐藏垂直滚动条
showsVerticalScrollIndicator={false}
隐藏水平滚动条
showsHorizontalScrollIndicator={false}
(在您的 FlatList 组件中添加这些道具。)
<ScrollView showsVerticalScrollIndicator ={false}/>
FlatList is inherited from VirtualizedList.
VirtualizedList is inherited from ScrollView.
So you can use ScrollView props to hide scrollBar indicators in FlatList.
<FlatList
...
showsVerticalScrollIndicator ={false}
showsHorizontalScrollIndicator={false}
...
/>
在 FlatList 和 ScrollView 中你都可以添加 showsHorizontalScrollIndicator={false}
prop
Flatlist 还提供 showsHorizontalScrollIndicator 和 showsVerticalScrollIndicator 属性来处理滚动指示器。
试试这个例子:
<FlatList
showsHorizontalScrollIndicator={false}
showsVerticalScrollIndicator
horizontal
data={data}
renderItem={({ item }) => this._renderItem(item)}
keyExtractor={this._keyExtractor}
/>
我正在尝试在我的应用程序中使用 FlatList (React-native)。我水平使用它并且可以看到滚动条。 ScrollView 中有一个选项可以隐藏滚动条,但 FlatList 中没有。有没有人能够以其他方式隐藏它。我尝试使用父子容器(Hide scroll bar, but still being able to scroll)的解决方案但没有用。
import React, { Component } from 'react';
import { Text, View, FlatList, StyleSheet, ScrollView } from 'react-native';
import { Card, Button } from 'react-native-elements';
const data = [
{ id: 1, title: 'title 1', details: 'details 1 details 1 details 1' },
{ id: 2, title: 'title 2', details: 'details 2 details 2 details 2 details 2 details 2 details 2' },
{ id: 3, title: 'title 3', details: 'details 3 details 3' },
{ id: 4, title: 'title 4 title 4', details: 'details 4' },
];
class CategoryRow extends Component {
_keyExtractor = (item, index) => item.id;
_renderItem = (item) => {
return (
<Card style={styles.cardContainer}>
<Text>{item.title}</Text>
<Text>{item.details}</Text>
</Card>
);
}
render() {
return (
<View style={{ flex: 1, overflow:'hidden' }}>
<View style={{ overflow:'hidden' }}>
<Text>Category 1</Text>
<FlatList
horizontal
data={data}
renderItem={({ item }) => this._renderItem(item)}
keyExtractor={this._keyExtractor}
/>
</View>
</View>
);
}
}
const styles = StyleSheet.create({
cardContainer: {
width: 140,
height: 150,
borderWidth: 0.5,
borderColor: 'grey',
overflow: 'scroll',
},
})
export default CategoryRow;
只需添加
showsHorizontalScrollIndicator={false}
试试下面提到的 ListView 水平添加 (horizontal={true}),如果您只想隐藏滚动条,只需添加 (showsHorizontalScrollIndicator={false})
<ListView showsHorizontalScrollIndicator={false}
horizontal={true}
/>
如果您想隐藏垂直滚动条,请使用:
showsVerticalScrollIndicator={false}
禁用垂直和水平滚动指示器
<ScrollView
showsVerticalScrollIndicator={false}
showsHorizontalScrollIndicator={false}
/>
隐藏垂直滚动条
showsVerticalScrollIndicator={false}
隐藏水平滚动条
showsHorizontalScrollIndicator={false}
(在您的 FlatList 组件中添加这些道具。)
<ScrollView showsVerticalScrollIndicator ={false}/>
FlatList is inherited from VirtualizedList.
VirtualizedList is inherited from ScrollView.
So you can use ScrollView props to hide scrollBar indicators in FlatList.
<FlatList
...
showsVerticalScrollIndicator ={false}
showsHorizontalScrollIndicator={false}
...
/>
在 FlatList 和 ScrollView 中你都可以添加 showsHorizontalScrollIndicator={false}
prop
Flatlist 还提供 showsHorizontalScrollIndicator 和 showsVerticalScrollIndicator 属性来处理滚动指示器。 试试这个例子:
<FlatList
showsHorizontalScrollIndicator={false}
showsVerticalScrollIndicator
horizontal
data={data}
renderItem={({ item }) => this._renderItem(item)}
keyExtractor={this._keyExtractor}
/>