1.0.0 • Published 4 years ago

react-native-custom-header v1.0.0

Weekly downloads
14
License
MIT
Repository
github
Last release
4 years ago

react-native-custom-header

A simple header for React Native apps.

Single Color Header Gradient Header

Installation

npm install --save react-native-custom-header

Documentation

PropDescriptionTypeDefaultRequired
backgroundColorBackground color of header.string'black'NO
widthSet open state function.numberDimensions.get('window').widthNO
heightTitle of select picker modal.number60NO
headerStyleCustom style for title.objectnullNO
isBackShowing state of back button.booleanfalseNO
backIconColorIcon icon's color.string-NO
backButtonStyleIcon color's style.object-NO
backButtonComponentCustom back button component. If you're using that, backIconColor, backButtonStyle is useless.any-NO
isGradientGradient color state of header.booleanfalseNO
colorsGradient colors.array'#6a11cb', '#2575fc'NO
startGradient start locations.object{x: 0, y: 0}NO
endGradient end locations.object{x: 1, y: 0}NO
locationsColors locations. (The length of this array must be the same as the length of the array of colors.)array0, 1NO
titleHeader title.string'Header Component'NO
titleStyleCustom header title style.objectnullNO
titleComponentCustom title component. If you're using that, titleStyle is useless.anynullNO
rightButtonsButtons on the right side of the header.arraynullNO
isShowShadowShow state of shadow.booleanfalseNO
shadowColorShadow's color.string'black'NO
shadowSizeShadow's size. (iOS)number2NO
elevationElevation size. (Shadow size) (Android)number20NO
isTranslucentStatusBarStatus Bar's translucent state.booleantrueNO
statusBarColorStatus Bar's background color.stringtrueNO
statusBarStyleStatus Bar's style. ('light-content', 'dark-content')stringtrueNO

Props table for rightButtons array:

PropDescriptionTypeDefaultRequired
idButton ID.number-YES
colorButton background color.string-YES
contentButton content.any-YES
actionButton action.function-YES

Usage

// right buttons array
const rightButtons = [
        {
            id: 1,
            color: 'rgba(255, 255, 255, 0.15)',
            content: <Text>🤙</Text>,
            action: () => alert('First Right Button'),
        },
        {
            id: 2,
            color: 'rgba(255, 255, 255, 0.15)',
            content: <Text>🖐️</Text>,
            action: () => alert('Second Right Button'),
        },
    ];

// render
<View style={{flex: 1}}>

    // Header Component
    <Header
        isGradient={true}
        colors={['#6a11cb', '#2575fc']}
        isBack={true}
        title="Header Component Title Here"
        rightButtons={rightButtons}
        height={60}
        isShowShadow={true}
    />
    
    // Page Content
    <View style={{padding: 15}}>
        <Text
            style={{fontSize: 22, fontWeight: '500', marginBottom: 10,}}
        >
            Example Title
        </Text>

        <Text>
            Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore
            et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
            aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
            cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
            culpa qui officia deserunt mollit anim id est laborum.
        </Text>
    </View>
</View>