1.0.4 • Published 6 years ago

react-native-text-transition v1.0.4

Weekly downloads
2
License
ISC
Repository
github
Last release
6 years ago

react-native-text-transition

Getting started

$ npm install react-native-text-transition --save

$ npm install react-native-linear-gradient --save

$ react-native link react-native-linear-gradient

Link

react-native-linear-gradient

Note

iOS

Then either:

Cocoapods

add the following line to your Podfile:

pod 'React', :path => '../node_modules/react-native'
pod 'BVLinearGradient', :path => '../node_modules/react-native-linear-gradient'

or:

  1. Open your project in XCode, right click on Libraries and click Add Files to "Your Project Name" Look under node_modules/react-native-linear-gradient and add BVLinearGradient.xcodeproj. (Screenshot).
  2. Add libBVLinearGradient.a to Build Phases -> Link Binary With Libraries (Screenshot).
  3. Click on BVLinearGradient.xcodeproj in Libraries and go the Build Settings tab. Double click the text to the right of Header Search Paths and verify that it has $(SRCROOT)/../react-native/React - if it isn't, then add it. This is so XCode is able to find the headers that the BVLinearGradient source files are referring to by pointing to the header files installed within the react-native node_modules directory. (Screenshot).

If you're having trouble, you can point your package.json at github to see if the issue has been fixed. Simply change the dependency

"react-native-linear-gradient": "react-native-community/react-native-linear-gradient",

to get the data right from github instead of npm and then npm install

For instance the podspec file does not contain the right data (author attributes etc..) in npm while it does in the github repo.

Android

Then:

  1. in android/settings.gradle
...
include ':react-native-linear-gradient'
project(':react-native-linear-gradient').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-linear-gradient/android')
  1. in android/app/build.gradle add:
dependencies {
    ...
    compile project(':react-native-linear-gradient')
}
  1. and finally, in android/src/main/java/com/{YOUR_APP_NAME}/MainActivity.java for react-native < 0.29, or android/src/main/java/com/{YOUR_APP_NAME}/MainApplication.java for react-native >= 0.29 add:
//...
import com.BV.LinearGradient.LinearGradientPackage; // <--- This!
//...
@Override
protected List<ReactPackage> getPackages() {
  return Arrays.<ReactPackage>asList(
    new MainReactPackage(),
    new LinearGradientPackage() // <---- and This!
  );
}

Usage

import TextTransition from 'react-native-text-transition';

render() {
    return (
        <View style={styles.container}>      
            <TextTransition
                text={'Here is the text content'}
            />
        </View>
    );
}

Available props

NameTypeDefaultDescription
textstring''Some text content
minHeightnumber58Minimum initial height of folding
maxHeightnumber0Maximum initial height of folding
frictionnumber50Friction (the smaller the amplitude)
tensionnumber0Move the modal up if the keyboard is open
showbooleanfalseThe minimum height is less than the minimum value, and the arrow icon is hidden
indentbooleantrueDo you want text to be indented?
contentBackgroundColorstring'#FFFFFF'Background color of content
iconUpnumbericons.upDefault up Icon
iconDownnumbericons.downDefault down Icon
iconColorstring'#cccccc'Default color settings for icons
textStylearray or objectstyles.description, Fonts.fontSize12, Colors.gray_808080Style of folding text
arrowViewStylearray or objectstyles.arrow, Styles.marginHorizontal15Arrowhead style
arrowImageStylearray or objectImg.resizeModeContain, styles.arrowIconThe style of Arrow Icon
animatedViewStyleobjectStyles.paddingHorizontal15Style of animation box