features
#
Responsive#
Platform & StatusBarما می توانیم توسط Platform
یکسری استایل ها و قابلیت ها را بر اساس os
یا version
یا موارد دیگر تغییر دهیم و برنامه خودمان را رسپانسیو کنیم:
همچنین می توان از StatusBar
برای قرار دادن محتوای برنامه یمان زیر قسمت بالایی صفحه گوشی استفاده کرد ک میتوان از آن ب عنوان یک کامپوننت استفاده کرد و یا از آن در استایل ها و بخش های مختلف استفاده کرد.
همچنین می توان فایل های رسپانسیومان را جدا بنویسیم و آن ها را مانند کد ک کامنت شده است، در استایل های مان require
کنیم.
همچنین می توان بجای استفاده از کامپوننت StatusBar
ب صورت جدا مانند StatusBar.currentHeight
در قسمت استایل ها استفاده کرد و محتوا را پایین قسمت بالایی گوشی قرار دهیم.
#
Dimensionsما برای اینکه ب ابعاد گوشی کاربر دسترسی داشته باشیم باید از Dimensions
استفاده کنیم
ک هم اندازه screen
ک معمولا ارتفاع بیشتری دارد (بخاطر استاتوس بار و نوار پایین گوشی) و
هم اندازه window
ک دقیقا اندازه قسمت مورد استفاده هر برنامه است را به ما می دهد.
🎉 همچنین می توان از هوک ()useWindowDimensions
نیز استفاده کنیم ک دقیقا اندازه window
را ب ما می دهد و هنگام تغییر orientation
، یکبار کامپوننت را رندر می کند.
🎉 همچنین اگر می خواهیم برنامه ای برای دستگاه هایی ک اندازه صفحه نمایش آن ها قابل تغییر است بنویسیم، می توانیم از addEventListener
درون Dimensions
نیز استفاده کنیم.
🎉 همچنین برای تجربه بهتر و استفاده از موارد بیشتر، بهتر است از پکیج react-native-community/hooks@
استفاده شود ک در قسمت پکیج ها توضیح داده شده است.
#
android & iosبرای اینکه استایل ها و کد هایی ک می نویسیم برای هر پلتفرمی جدا باشد، می توانیم ب 2 روش زیر عمل کنیم:
- خود RN یک قابلیت دارد ک اگر در انتهای یک کامپوننت از کلمات
ios
یاandroid
استفاده کنیم، بر اساس آن کد های ما را نمایش می دهد یعنی مثلا کدios
را در آن سیستم عامل فقط نمایش می دهد
ابتدا باید یک فولدر در فولدر components
بسازیم و سپس درون آن یک فایل بدون هیچ پسوندی و با نام دلخواه مان می سازیم
حال 2 فایل دیگر با نام های AppText.ios.js
و AppText.android.js
می سازیم و کد ها و استایل های مربوطه را در آن ها قرار می دهیم:
حال کافیست در هر کامپوننتی ک می خواهیم، کامپوننت اصلی این فایل ها ک همان AppText.js
می باشد را صدا بزنیم و خودش بر اساس سیستم عامل تشخیص می دهد ک کدام فایل را باید اجرا کند.
- همچنین می توان بجای این موارد، کنار هر کامپوننتی یک فایل
styles.js
قرار دهیم و بجای اینکه استایل ها را درون هر فایل بنویسیم، درون یک فایل جدا قرار دهیم(بخاطر استفاده ازPlatform
و نوشتن استایل های جدا برای هر سیستم عامل، استایل ها زیاد می شود و بهتر است ک آن را جدا کنیم.)
حال می توان در فایل اصلی ک AppText.js
می باشد از آن استفاده کنیم.