React Native е мобилна разработка, базирана на React, която можем да използваме за извършване на мобилна разработка.
В тази статия ще разгледаме как да го използваме, за да създадем приложение с React Native.
Лента за състоянието
StatusBar
ни позволява да контролираме лентата на състоянието с нашето приложение.
Например, можем да напишем:
import React, { useState } from 'react'; import { Button, StyleSheet, StatusBar, View } from "react-native"; import Constants from "expo-constants"; export default function App() { const [visibleStatusBar, setVisibleStatusBar] = useState(false); const changeVisibilityStatusBar = () => { setVisibleStatusBar(!visibleStatusBar); }; return ( <View style={styles.container}> <StatusBar backgroundColor="blue" barStyle='dark-content' /> <View> <StatusBar hidden={visibleStatusBar} /> </View> <View style={styles.buttonContainer}> <Button title="Toggle StatusBar" onPress={() => changeVisibilityStatusBar()} /> </View> </View> ); } const styles = StyleSheet.create({ container: { flex: 1, marginTop: Constants.statusBarHeight, }, scrollView: { flex: 1, backgroundColor: 'pink', alignItems: 'center', justifyContent: 'center', }, });
Добавихме StatusBar
, който може да се превключва с проп hidden
.
И също така добавихме такъв, който има backgroundColor
, зададен на 'blue'
.
barStyle
задава стила на лентата на състоянието, който е 'dark-content'
.
Може също да се настрои на 'default'
и ‘light-content’
.
Подпорки за стил на изображение
Можем да настроим нашето изображение да се показва със стила, който желаем.
Например, можем да напишем:
import React from 'react'; import { View, Image } from "react-native"; export default function App() { return ( <View> <Image style={{ resizeMode: "cover", height: 100, width: 200 }} source={{ uri: 'https://i.picsum.photos/id/23/200/300.jpg?hmac=NFze_vylqSEkX21kuRKSe8pp6Em-4ETfOE-oyLVCvJo' }} /> </View> ); }
за да зададете width
и height
.
resizeMode
задава как се преоразмерява изображението.
Можем да го зададем на 'cover'
, 'contain'
, 'stretch'
, 'repeat'
или 'center'
.
Също така можем да зададем цвета на нюанса. Например, можем да напишем:
import React from 'react'; import { View, Image } from "react-native"; export default function App() { return ( <View> <Image style={{ tintColor: "lightgreen", resizeMode: "contain", height: 100, width: 200 }} source={{ uri: 'https://i.picsum.photos/id/23/200/300.jpg?hmac=NFze_vylqSEkX21kuRKSe8pp6Em-4ETfOE-oyLVCvJo' }} /> </View> ); }
Тогава можем да видим, че изображението е светлозелена кутия, вместо да показва оригиналното изображение.
Също така можем да добавим граница около нашето изображение.
Например, можем да напишем:
import React from 'react'; import { View, Image } from "react-native"; export default function App() { return ( <View> <Image style={{ borderColor: "red", borderWidth: 5, height: 100, width: 200 }} source={{ uri: 'https://reactnative.dev/docs/assets/p_cat2.png' }} /> </View> ); }
Задаваме borderColor
на 'red'
и borderWidth
на 5, за да добавим границата.
Също така можем да добавим радиус на границата към изображение, като напишем:
import React from 'react'; import { View, Image } from "react-native"; export default function App() { return ( <View> <Image style={{ borderTopLeftRadius: 10, borderTopRightRadius: 10, borderBottomLeftRadius: 10, borderBottomRightRadius: 10, height: 100, width: 200 }} source={{ uri: 'https://i.picsum.photos/id/23/200/300.jpg?hmac=NFze_vylqSEkX21kuRKSe8pp6Em-4ETfOE-oyLVCvJo' }} /> </View> ); }
Задаваме радиуса на границата за изображението за всеки ъгъл с тези свойства.
Заключение
Можем да контролираме лентата на състоянието и да манипулираме изображения с React Native.