react-native-module-custom-keyboard v1.0.4
react-native-custom-keyboard
#commands
npm password raja1003k@gmail.com Raja1003 Rohit1003k publish module : https://www.youtube.com/watch?v=rTsz09zRuTU
npm init npm adducer npm login npm whom Clear npm version npm version 1.0.1 (update version) npm publish
/// https://www.youtube.com/watch?v=oZSZ8mievUU
https://www.appcoda.com/creating-pod-cocoapods/ doc pod init pod spec create repositoryname.podspec.podspec mv repositoryname.podspec.podspec repositoryname.podspec open repositoryname.podspec -a Xcode git tag 1.0.0 git push —tags pwd ls -al pod spec lint touch .swift-version echo “4.0” > .swift-version cat .swift-version pod spec lint pod trunk me pod trunk session register pod trunk push
git push origin master git status git add . git commit -m “”
Getting started
$ npm install react-native-custom-keyboard --save
Mostly automatic installation
$ react-native link react-native-custom-keyboard
Manual installation
iOS
- In XCode, in the project navigator, right click
Libraries➜Add Files to [your project's name] - Go to
node_modules➜react-native-custom-keyboardand addRNCustomKeyboard.xcodeproj - In XCode, in the project navigator, select your project. Add
libRNCustomKeyboard.ato your project'sBuild Phases➜Link Binary With Libraries - Run your project (
Cmd+R)<
Android
- Open up
android/app/src/main/java/[...]/MainActivity.java
- Add
import cn.reactnative.customkeyboard.RNCustomKeyboardPackage;to the imports at the top of the file - Add
new RNCustomKeyboardPackage()to the list returned by thegetPackages()method
- Append the following lines to
android/settings.gradle:include ':react-native-custom-keyboard' project(':react-native-custom-keyboard').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-custom-keyboard/android') - Insert the following lines inside the dependencies block in
android/app/build.gradle:compile project(':react-native-custom-keyboard')
Usage
Register a component as custom keyboard:
import React, { Component } from 'react';
import {
TouchableOpacity,
Text,
View,
} from 'react-native';
import { register, insertText } from 'react-native-custom-keyboard';
class MyKeyboard extends Component {
onPress = () => {
insertText(this.props.tag, 'Hello, world');
};
render() {
return (
<View>
<TouchableOpacity onPress={this.onPress}>
<Text>Hello, world</Text>
</TouchableOpacity>
</View>
);
}
}
register('hello', () => MyKeyboard);Use CustomTextInput instead of TextInput.
import React, { Component } from 'react';
import {CustomTextInput} from 'react-native-custom-keyboard';
class MyPage extends Component {
state = {
value: '';
};
onChangeText = text => {
this.setState({value: text});
};
render() {
return (
<View>
<CustomTextInput customKeyboardType="hello" value={this.state.value} onChangeText={this.onChangeText} />
</View>
);
}
}API
register(type, type)
Register a custom keyboard type.
install(tag, type)
Install custom keyboard to a TextInput.
Generally you can use CustomTextInput instead of this. But you can use this API to install/change custom keyboard dynamically.
uninstall(tag)
Uninstall custom keyboard from a TextInput dynamically.
insertText(tag, text)
Use in a custom keyboard, insert text to TextInput.
backSpace(tag)
Use in a custom keyboard, delete selected text or the charactor before cursor.
doDelete(tag)
Use in a custom keyboard, delete selected text or the charactor after cursor.
moveLeft(tag)
Use in a custom keyboard, move cursor to selection start or move cursor left.
moveRight(tag)
Use in a custom keyboard, move cursor to selection end or move cursor right.
switchSystemKeyboard(tag)
Use in a custom keyboard. Switch to system keyboard.
Next time user press or focus on the TextInput, custom keyboard will
appear again. To keep using system keyboard, call uninstall instead.
CustomTextInput
Use instead of TextInput, this component support all properties of TextInput.
prop: customKeyboardType: string
Use a registered custom keyboard.