Aradığım bi'şeyleri bulmak için buraya kadar geldim ama bir türlü bulamadım...
react-native-gesture-handler
npm install @react-navigation/native
<
Aslında parça parça bir kurulum yaparak sadece ihtiyacımız olanları kullanabilirdik. Mesela yandan açılan bir menü ihtiyacımız yoksa bunun paketini projemize kurmaya gerek yoktu. Ama bu dokümanda her şeyi kuracağız.
Dokümantasyondaki gibi ayrı ayrı:
yarn add @react-navigation/native
yarn add react-native-screens react-native-safe-area-context
yarn add @react-navigation/native-stack
yarn add @react-navigation/bottom-tabs
yarn add @react-navigation/drawer
yarn add react-native-gesture-handler react-native-reanimated
ya da hepsi tek seferde:
yarn add @react-navigation/native react-native-screens react-native-safe-area-context @react-navigation/native-stack @react-navigation/bottom-tabs @react-navigation/drawer react-native-gesture-handler react-native-reanimated
kurulum yapabiliriz.
Projenin en kök dosyasına (index.js? App.js?) gidip sayfanın en başına
react-native-gesture-handler
import'unu
yapmamız gerekiyor. Dokümantasyon bu adımı atlamamamız için bizi uyarıyor.
Atlarsanız development aşamasında bi'şey olmasa bile production aşamasında
sorunlarla karşılaşabilirsiniz, diyor.
import 'react-native-gesture-handler';
babel.config.js
dosyasına şu eklemeyi yapıyoruz:
module.exports = {
...
plugins: [
...
'react-native-reanimated/plugin',
],
};
Android için Hermes'i aktif ediyoruz. android/app/build.gradle
dosyasında şu değişikliği yapın:
project.ext.react = [
enableHermes: true
]
Yine Android için MainApplication.java
dosyasında şu eklemeleri uygun yerlere yapıyoruz:
import com.facebook.react.bridge.JSIModulePackage;
import com.swmansion.reanimated.ReanimatedJSIModulePackage;
...
private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
...
@Override
protected String getJSMainModuleName() {
return "index";
}
@Override
protected JSIModulePackage getJSIModulePackage() {
return new ReanimatedJSIModulePackage();
}
};
...
Terminalde kök klasördeysek cd android
deyip android klasörüne giriyoruz.
./gradlew clean
komutunu veriyoruz ve projenin yeni ayarlarlarla yeniden derlenmesini sağlıyoruz.
Sonra kök klasöre cd ..
diyerek dönebiliriz.
Buraya kadar Android kurulumlarını tamamlamış olduk. IOS kurulumları için pod install
komutu vermek yeterli.