UNPKG

react-native-simple-gauge

Version:
94 lines (77 loc) 1.91 kB
# react-native-simple-gauge Gauge progress module for React Native Based on [react-native-circular-progress](https://github.com/bgryszko/react-native-circular-progress) ![image](screenshot.gif) ## Requirement RN 0.60+ * RN <= 0.59 supported by 0.1.11 * RN <= 0.44 supported by 0.1.2 ## Install #RN 0.62+ 1) `npm i --save react-native-simple-gauge` 2) `npm i --save @react-native-community/art` 3) run `pod install` in `ios` directory #RN 0.60 - 0.61 1) `npm i --save react-native-simple-gauge` 2) Link the ART library to your ReactNative project for ios add below line to `ios/Podfile` ``` pod 'React-ART', :path => '../node_modules/react-native/Libraries/ART' ``` and run `pod install` in `ios` directory ## Usage ```js import { AnimatedGaugeProgress, GaugeProgress } from 'react-native-simple-gauge'; ``` ```jsx <AnimatedGaugeProgress size={200} width={15} fill={100} rotation={90} cropDegree={90} tintColor="#4682b4" delay={0} backgroundColor="#b0c4de" stroke={[2, 2]} //For a equaly dashed line strokeCap="circle" /> ``` Use `cropDegree` to vary the size of arc Refer to below example to add something inside gauge. ```js const size = 200; const width = 15; const cropDegree = 90; const textOffset = width; const textWidth = size - (textOffset*2); const textHeight = size*(1 - cropDegree/360) - (textOffset*2); ``` ```jsx <GaugeProgress size={size} width={width} fill={this.state.fill} cropDegree={cropDegree} ...... > <View style={styles.textView}> <Text style={styles.text}>hello</Text> </View> </GaugeProgress> ``` ```js textView: { position: 'absolute', top: textOffset, left: textOffset, width: textWidth, height: textHeight, alignItems: 'center', justifyContent: 'center', }, text: { fontSize: 20, }, ``` ## License MIT