CodeBlanks Logo Icon CodeBlanks

Platform-specific

Platform-specific native modül öğrenirsin.

Platform-specific

Platform-specific kod, iOS ve Android için ayrı davranış yazmaktır. Platform modülü, cihazın işletim sistemini verir: Platform.OS === 'ios' veya Platform.OS === 'android'. Buna göre dallanma yapılır.

Dosya adları da platform seçici olabilir: Battery.ios.js yalnızca iOS'ta, Battery.android.js yalnızca Android'de yüklenir. Battery.js her ikisinde de yedek olarak kullanılır. Bu kalıp, büyük farklar olduğunda tercih edilir; küçük farklar için Platform.OS daha pratiktir.

Platform.OS ile dallanma

Platform.OS bir dizedir: 'ios' veya 'android'. if (Platform.OS === 'ios') ile iOS'a özel kod yazılır. Bu kalıp, küçük farklar için idealdir: margin değerleri, renkler, davranış farkları.

Örnek: const marginTop = Platform.OS === 'ios' ? 40 : 24. iOS'ta çentik (notch) nedeniyle 40, Android'de 24 px yeterli olabilir. Bu tek satırlık çözüm, iki ayrı dosya oluşturmaktan daha pratiktir.

Uygulama Platform margin değeri

getTopMargin işlevini tamamla. Platform'u react-native'dan içe aktar. Platform.OS === 'ios' ? 40 : 24 ifadesini döndür.

Başlangıç kodu

App.js
import { Platform } from 'react-native';

export function getTopMargin() {
  // Platform.OS'ye göre 40 veya 24 döndür
}

Örnek çözüm

App.js
import { Platform } from 'react-native';

export function getTopMargin() {
  return Platform.OS === 'ios' ? 40 : 24;
}

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Platform içe aktarma

Soru
import { ____ } from 'react-native';
Cevap
import { Platform } from 'react-native';

Açıklama: Platform modülü işletim sistemini verir.

2 Platform parçalarını eşle

Kavram Anlamı
Platform.OS İşletim sistemi
'ios' iOS değeri
'android' Android değeri
.ios.js iOS dosya uzantısı

3 Hangisi küçük farklar için idealdir?

  • İki ayrı dosya oluşturma Doğru cevap
  • Platform.OS ile dallanma
  • Native modül yazma
  • Yeni bir paket kurma

Açıklama: Platform.OS ile dallanma küçük farklar için idealdir.

İleri seviye bölümündeki tüm dersler