1.0.5 • Published 6 years ago

react-native-scrollable-header v1.0.5

Weekly downloads
11
License
MIT
Repository
github
Last release
6 years ago

Scrollable Header

npm version

Simple but useful. I've always wanted to use this kind of header in my projects and I've tried many solutions available but most of them had issues with the core feature: the header. Based on that, I've created this EXTREME basic header that JUST scrolls the header: that's all. It's simple so anyone can read this code and make changes if needed (hopefully you don't need).

Instalation

npm install react-native-scrollable-header --save

Demo

Demo

Example

import RNScrollable from 'react-native-scrollable-header';

export default class App extends Component {

  renderExpanded = () => (
    <View style={{ flex: 1, backgroundColor: 'pink', padding: 20, justifyContent: 'center' }}>
      <Text style={{ fontWeight: 'bold', fontSize: 22, alignSelf: 'center' }}>
        Expanded Header
      </Text>
    </View>
  );

  renderCollapsed = () => (
    <View style={{ flex: 1, backgroundColor: 'red', padding: 10, justifyContent: 'center' }}>
      <Text style={{ fontWeight: 'bold', fontSize: 14, alignSelf: 'center' }}>
        Collapsed Header
      </Text>
    </View>
  );


  render() {
    return (
      <RNScrollable 
        content={() => <Text>{content}</Text>}
        collapsedHeader={this.renderCollapsed}
        expandedHeader={this.renderExpanded}
        collapsedHeight={60}
        expandedHeight={200}
      />
    );
  }
}

Documentation

PropsDescriptionExampleRequired
contentRenders the content of the pageContentYes
collapsedHeaderRenders the collapsed header<View style={{flex: 1}} />Yes
expandedHeaderRenders the expanded header (full)<View style={{flex: 1}} />Yes
collapsedHeightCollapsed header height60Yes
expandedHeightExpanded header height200Yes
containerStyleThe style for the whole screenNo
scrollContainerStyleThe style for ScrollView's contentContainerStyleNo
headerContainerStyleThe style for the top most header viewNo