Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/conduitmobilernd/react-native-scratch
Scratch view for react native
https://github.com/conduitmobilernd/react-native-scratch
react-native react-native-scratch react-native-scratch-card react-native-scratch-image react-native-scratch-view scratch scratch-card scratch-image scratch-view
Last synced: 2 months ago
JSON representation
Scratch view for react native
- Host: GitHub
- URL: https://github.com/conduitmobilernd/react-native-scratch
- Owner: ConduitMobileRND
- License: mit
- Created: 2019-03-10T13:55:00.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2022-06-02T11:43:47.000Z (over 2 years ago)
- Last Synced: 2024-10-24T07:14:10.196Z (2 months ago)
- Topics: react-native, react-native-scratch, react-native-scratch-card, react-native-scratch-image, react-native-scratch-view, scratch, scratch-card, scratch-image, scratch-view
- Language: Java
- Homepage:
- Size: 116 KB
- Stars: 2
- Watchers: 0
- Forks: 1
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# react-native-scratch
## Getting started
`$ npm install react-native-scratch --save`
### Mostly automatic installation
`$ react-native link react-native-scratch`
### Manual installation
#### iOS
1. In XCode, in the project navigator, right click `Libraries` ➜ `Add Files to [your project's name]`
2. Go to `node_modules` ➜ `react-native-scratch` and add `RNScratch.xcodeproj`
3. In XCode, in the project navigator, select your project. Add `libRNScratch.a` to your project's `Build Phases` ➜ `Link Binary With Libraries`
4. Run your project (`Cmd+R`)<#### Android
1. Open up `android/app/src/main/java/[...]/MainActivity.java`
- Add `import com.como.RNTScratchView.ScratchViewPackage;` to the imports at the top of the file
- Add `new ScratchViewPackage()` to the list returned by the `getPackages()` method
2. Append the following lines to `android/settings.gradle`:
```
include ':react-native-scratch'
project(':react-native-scratch').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-scratch/android')
```
3. Insert the following lines inside the dependencies block in `android/app/build.gradle`:
```
implementation project(':react-native-scratch')
```## Usage
The ScratchView will fill its containing view and cover all other content untill you scratch it
Just put it as the last component in your view
```javascript
import React, { Component } from 'react';
import { View } from 'react-native';
import ScratchView from 'react-native-scratch'class MyView extends Component {
onImageLoadFinished = ({ id, success }) => {
// Do something
}onScratchProgressChanged = ({ value, id }) => {
// Do domething like showing the progress to the user
}onScratchDone = ({ isScratchDone, id }) => {
// Do something
}onScratchTouchStateChanged = ({ id, touchState }) => {
// Example: change a state value to stop a containing
// FlatList from scrolling while scratching
this.setState({ scrollEnabled: !touchState });
}render() {
return (
// will be covered by the ScratchView
// will be covered by the ScratchView
}
)
}export default MyView;
```