0.1.4 • Published 7 years ago

react-native-mauron85-countdown v0.1.4

Weekly downloads
6
License
Apache-2.0
Repository
github
Last release
7 years ago

React Native CountDown

currently Android only

Android screenshot

Install

npm i react-native-mauron85-countdown --save
react-native link react-native-mauron85-countdown

Append to android/app/build.gradle:

repositories {
    flatDir {
        dirs "../../node_modules/react-native-mauron85-countdown/lib/libs"
    }
}

dependencies {
  ...
  compile(name: 'richpath-release', ext:'aar')
}

Example

import React, { Component } from 'react';
import { StyleSheet, View, Button } from 'react-native';
import CountDownView from 'react-native-mauron85-countdown';

export default class CountDown extends Component {
  constructor(props) {
    super(props);
    this.onPress = this.onPress.bind(this);
    this.onFinish = this.onFinish.bind(this);
    this.state = { isStarted: false };
  }

  onPress() {
    const { isStarted } = this.state;
    if (isStarted) {
      this.countDown.stop();
    } else {
      this.countDown.start();
    }
    this.setState({ isStarted: !isStarted });
  }

  onFinish() {
    this.setState({ isStarted: false });
  }

  render() {
    return (
      <View style={styles.container}>
        <CountDownView
          style={styles.countdown}
          millisInFuture={3014000}
          intervalMillis={1000}
          secondColor="#f57df5"
          secondColorDim="#aaaaaa"
          minuteColor="#00bfff"
          minuteColorDim="#cccccc"
          textColor="#ffffff"
          textSize={30}
          onFinish={this.onFinish}
          ref={(component) => { this.countDown = component; }}
        />
        <Button
          onPress={this.onPress}
          title={this.state.isStarted ? 'Stop' : 'Start'}
          color="#841584"
          accessibilityLabel="Starts countdown"
        />
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: '#333336',
  },
  countdown: {
    width: 300,
    height: 300,
    marginBottom: 20,
  }
});

More examples can be found in examples directory.

0.1.4

7 years ago

0.1.3

7 years ago

0.1.2

7 years ago

0.1.1

7 years ago

0.1.0

7 years ago