Installation
npm i react-native-companim
Components Animated
- MultiplyButton
- FadeButton
- RotateButton
- BounceButton
- ScaleButton
- Card
- CircleIndicator
- MultiplyIndicator
- RotateIndicator
- ScaleIndicator
- SequentIndicator
SuddenIndicator
Usage
MultiplyButton
import React from 'react'
import {MultiplyButton} from 'react-native-companim'
import {View} from "react-native"
export default class App extends React.Component{
render() {
return (
<View style={{justifyContent:"center",alignItems:"center",flex:1}}>
<MultiplyButton middleButtonPixel={50}
lastButtonPixel={100}
direction="y"
tension={40}
friction={40}
delay={500}
/>
)}
}
Code explanation:
You can specify style of the all of three button whatever you want.You can also specify child components of the buttons
You can also specify:
prop | #default |
---|
direction | x-axis |
tension | 40 |
friction | 40 |
delay | 0 |
middleButtonPixe | 50 |
lastButtonPixel | 100 |
firstButtonChilds | none |
secondButtonChilds | none |
lastButtonChilds | none |
firstButtonStyle | object |
middleButtonStyle | object |
lastButtonStyle | object |
Card
import React from 'react'
import {Card} from 'react-native-companim'
import {View} from "react-native"
const data = [1,2,3,4,5,6]//it is added just for map function.Not important!
const datas={ "name":"xxxx",
"title":"xxxx",
"subtitle":"xxxx",
"middleTitle":"xxxx"
}
export default class App extends React.Component{
render() {
return (
{data.map((_,index)=>{ return <Card sequentially={index}
animationType="opacity"
title={datas.title}
titleStyle={{color:"green"}}
/>
})}
)
}
}
Code explanation:
You can specify style of the title,subtitle,middletitle and endtitle whatever you want.You can also specify:
- animationType value which is can take
leftToRight
, opacity
, bothLeftToRightOpacity
, bytheZaxis
, bytheXaxis
and bytheYaxis
values(for the animation, index value of the map function is necessary) - sequentially value which takes index of the map function (necessary for the animation)
prop | #default |
---|
animationType | leftToRight |
sequentially | index of map function(it necessary for animation) |
title | xxxx |
titleStyle | {color:"green"} |
subtitle | {color:"blue"} |
middleTitle | xxxx |
middleTitleStyle | {color:"green"} |
endTitle | xxxx |
endTitleStyle | {color:"green"} |
image | none |
Bounce Button
import React from 'react'
import {BounceButton} from 'react-native-companim'
import {View} from "react-native"
export default class App extends React.Component{
render() {
return (
<BounceButton style={{backgroundColor:"green",width:200,height:200}}
duration={500}
direction={false}
friction={false}
delay={0}/>
)
}
}
Code explanation:
You can specify style of the button whatever you want.You can also specify:
- duration value which is the complement time of the animation
- direction value which is used for direction of the animation such as to forward(with
false
value) or to upward(with true
value) - friction value is the effect of the animation
- delay value is the waiting time before the animation
prop | #default |
---|
duration | 500 |
direction | (true)forwards |
friction | 40 |
delay | 0 |
style | object |
Fade Button
import React from 'react'
import {FadeButton} from 'react-native-companim'
import {View} from "react-native"
export default class App extends React.Component{
render() {
return (
<FadeButton style={{backgroundColor:"green",width:200,height:200}}
duration={500}
repeat={true}
gone={true}/>
)
}
}
Code explanation:
You can specify style of the button whatever you want.You can also specify :
- duration value which is the complement time of the animation
- repeat value which is repetition of the animation.If it is
true
, animation playing continuously - gone value is that when is true , button is not shown again
prop | #default |
---|
duration | 1000 |
gone | (false) |
repeat | false |
style | object |
Rotate Button
import React from 'react'
import {RotateButton} from 'react-native-companim'
import {View} from "react-native"
export default class App extends React.Component{
render() {
return (
<RotateButton
style={{backgroundColor:"green",width:200,height:200}}
from_deg="0"
to_deg="-45"
delay={100}
duration={500}
type="infinite" />
)
}
}
Code explanation:
You can specify style of the button whatever you want.You can also specify :
- from_deg value which is beginning degree of the animation
- to_deg value which is last degree of the animation
- delay value is waiting time before the animation
- duration value which is the complement time of the animation
- type value can be take three value which is
infinite
,comeback
,shake
prop | #default |
---|
type | shake |
from_deg | none |
to_deg | none |
delay | 0 |
duration | 500 |
style | object |
Scale Button
import React from 'react'
import {ScaleButton} from 'react-native-companim'
import {View} from "react-native"
export default class App extends React.Component{
render() {
return (
<ScaleButton
style={{backgroundColor:"green",width:200,height:200}}
animationType="bothXYaxis"
duration={1000}
/>
)
}
}
Code explanation:
You can specify style of the button whatever you want.You can also specify :
- delay value is waiting time before the animation
- duration value which is the complement time of the animation
- animationType value can be take three value which is
bothXYaxis
,byTheYaxis
,byTheXaxis
prop | #default |
---|
animationType | byTheXaxis |
duration | 1000 |
delay | 0 |
style | object |
CircleIndicator
import React from 'react'
import {CircleIndicator} from 'react-native-companim'
export default class App extends React.Component{
render() {
return (
<CircleIndicator
color={["gray","blue","yellow","green"]}
delay={0}
/>
)
}
}
MultiplyIndicator
import React from 'react'
import {MultiplyIndicator} from 'react-native-companim'
export default class App extends React.Component{
render() {
return (
<MultiplyIndicator
duration={1000}
tension={40}
/>
)
}
}
RotateIndicator
import React from 'react'
import {RotateIndicator} from 'react-native-companim'
export default class App extends React.Component{
render() {
return (
<RotateIndicator
duration={1000}
delay={0}
/>
)
}
}
prop | #default |
---|
duration | 1000 |
delay | 0 |
ScaleIndicator
import React from 'react'
import {ScaleIndicator} from 'react-native-companim'
export default class App extends React.Component{
render() {
return (
<ScaleIndicator
tension={80}
/>
)
}
}
prop | #default |
---|
tension | 200 |
style | object |
Sequent Indicator
import React from 'react'
import {SequentIndicator} from 'react-native-companim'
export default class App extends React.Component{
render() {
return (
<SequentIndicator
tension={200}
middleStyle={{......}}
/>
)
}
}
prop | #default |
---|
tension | 40 |
rightSecondaryStyle | object |
rightFirstStyle | object |
leftFirstStyle | object |
leftSecondaryStyle | object |
middleStyle | object |
Sudden Indicator
import React from 'react'
import {SuddenIndicator} from 'react-native-companim'
export default class App extends React.Component{
render() {
return (
<SuddenIndicator
/>
)
}
}
prop | #default |
---|
tension | 90 |
style | object |