Documentos de Académico
Documentos de Profesional
Documentos de Cultura
No Software Descripción
Señor.
Salida
Hola Mundo
Para mostrar un mensaje simple que diga "Bienvenido a
Postparaprogramadores", elimine la parte CSS e inserte el mensaje a imprimir
envuelto por las etiquetas <text> </text> dentro de <view> </view> como se
muestra a continuación.
import React from 'react';
import { StyleSheet, Text, View } from 'react-native';
Usando estado
Teoría
Ejemplo
Componente de presentación
Ahora entenderemos qué es un componente de presentación y también cómo
funciona.
Teoría
Ejemplo
Componente contenedor
En esta sección, simplificaremos nuestro componente contenedor de nuestro
capítulo anterior.
App.js
import React from 'react';
import { StyleSheet, Text, View } from 'react-native';
import PresentationalComponent from
'./PresentationalComponent'
Componente de presentación
En el siguiente ejemplo, importaremos la StyleSheet . En la parte inferior del
archivo, vamos a crear nuestra hoja de estilo y asignarlo a
la estilos constante. Tenga en cuenta que nuestros estilos están
en camelCase y no usamos px o% para el estilo.
Para aplicar estilos a nuestro texto, necesitamos agregar la propiedad style =
{styles.myText} al elemento Text .
PresentationalComponent.js
import React, { Component } from 'react'
import { Text, View, StyleSheet } from 'react-native'
Diseño
Para lograr el diseño deseado, flexbox ofrece tres propiedades
principales: flexDirection justifyContent y alignItems .
La siguiente tabla muestra las posibles opciones.
Puede hacer clic en cada elemento de la lista para activar una alerta con el
nombre.
React Native: entrada de texto
En este capítulo, le mostraremos cómo trabajar con elementos TextInput en
React Native.
El componente Inicio importará y renderizará entradas.
App.js
import React from 'react';
import Inputs from './inputs.js'
Entradas
Definiremos el estado inicial.
Después de definir el estado inicial, crearemos las funciones
handleEmail y handlePassword . Estas funciones se utilizan para actualizar
el estado.
La función login () solo alertará el valor actual del estado.
También agregaremos algunas otras propiedades a las entradas de texto para
desactivar la capitalización automática, eliminar el borde inferior en los
dispositivos Android y establecer un marcador de posición.
inputs.js
import React, { Component } from 'react'
import { View, Text, TouchableOpacity, TextInput, StyleSheet
} from 'react-native'
<TouchableOpacity
style = {styles.submitButton}
onPress = {
() => this.login(this.state.email,
this.state.password)
}>
<Text style = {styles.submitButtonText}>
Submit </Text>
</TouchableOpacity>
</View>
)
}
}
export default Inputs
App.js
import React from 'react';
import ScrollViewExample from './scroll_view.js';
ScrollView.js
import React, { Component } from 'react';
import { Text, Image, View, StyleSheet, ScrollView } from
'react-native';
Agregar imagen
Permítanos crear una nueva carpeta img dentro de
la carpeta src . Agregaremos nuestra imagen ( myImage.png ) dentro de
esta carpeta.
Mostraremos imágenes en la pantalla de inicio.
App.js
image_example.js
Salida
Densidad de pantalla
React Native ofrece una manera de optimizar imágenes para diferentes
dispositivos usando el sufijo @ 2x, @ 3x . La aplicación cargará solo la imagen
necesaria para una densidad de pantalla particular.
Los siguientes serán los nombres de la imagen dentro de la carpeta img .
my-image@2x.jpg
my-image@3x.jpg
Imágenes de red
Cuando se usan imágenes de red, en lugar de requerir , necesitamos
la propiedad fuente . Se recomienda definir el ancho y el alto para las
imágenes de red.
App.js
image_example.js
Salida
React Native - HTTP
En este capítulo, le mostraremos cómo usar fetch para manejar solicitudes de
red.
App.js
Usando Fetch
Utilizaremos el método del ciclo de vida del componenteDidMount para
cargar los datos del servidor tan pronto como se monte el componente. Esta
función enviará una solicitud GET al servidor, devolverá datos JSON,
registrará la salida a la consola y actualizará nuestro estado.
http_example.js
Salida
React Native - Botones
En este capítulo, le mostraremos los componentes táctiles en react Native. Los
llamamos 'tocables' porque ofrecen animaciones integradas y podemos usar
el accesorio onPress para manejar eventos táctiles.
Facebook ofrece el componente Button , que puede usarse como un botón
genérico. Considere el siguiente ejemplo para entender lo mismo.
App.js
Opacidad tocable
Este elemento cambiará la opacidad de un elemento cuando se toque.
App.js
Toque destacado
Cuando un usuario presiona el elemento, se oscurecerá y se mostrará el color
subyacente.
App.js
App.js
Componente de animaciones
Estableceremos myStyle como una propiedad del estado. Esta propiedad se
usa para diseñar un elemento dentro
de PresentationalAnimationComponent .
También crearemos dos
funciones: expandElement y collapseElement . Estas funciones actualizarán
los valores del estado. El primero usará la animación de preajuste
de primavera, mientras que el segundo tendrá el preajuste lineal . Pasaremos
estos como accesorios también. Los botones Expandir y Contraer llaman a
las funciones expandElement () y collapseElement () .
En este ejemplo, cambiaremos dinámicamente el ancho y la altura del
cuadro. Dado que el componente Inicio será el mismo, solo cambiaremos
el componente Animaciones .
En este ejemplo, cambiaremos dinámicamente el ancho y la altura del
cuadro. Dado que el componente Inicio será el mismo, solo cambiaremos
el componente Animaciones .
App.js
App.js
Routes.js
Home.js
About.js
Casos de uso
Veamos ahora algunos casos de uso comunes.
Cuando necesite envolver sus elementos dentro del contenedor, puede
usar Ver como elemento contenedor.
Cuando desee anidar más elementos dentro del elemento primario, tanto el
primario como el secundario pueden ser Ver . Puede tener tantos hijos como
quieras.
Cuando desee diseñar diferentes elementos, puede colocarlos dentro de
la Vista, ya que admite propiedades de estilo , flexbox , etc.
View también admite eventos táctiles sintéticos, que pueden ser útiles para
diferentes propósitos.
Ya usamos Ver en nuestros capítulos anteriores y también lo usaremos en
casi todos los capítulos posteriores. La vista puede asumirse como un
elemento predeterminado en React Native. En el ejemplo que se muestra a
continuación, anidaremos dos Vistas y un texto.
App.js
Salida
React Native - WebView
En este capítulo, aprenderemos cómo usar WebView. Se utiliza cuando desea
representar la página web en su aplicación móvil en línea.
Usando WebView
El HomeContainer será un componente contenedor.
App.js
web_view_example.js
from 'react-native'
const WebViewExample = () => {
return (
<View style = {styles.container}>
<WebView
source = {{ uri:
'https://www.google.com/?gws_rd=cr,ssl&ei=SICcV9_EFqqk6ASA3Za
ABA#q=postparaprogramadores' }}
/>
</View>
)
}
export default WebViewExample;
App.js
import React, { Component } from 'react'
import WebViewExample from './modal_example.js'
modal_example.js
import React, { Component } from 'react';
import { Modal, Text, TouchableHighlight, View, StyleSheet}
from 'react-native'
class ModalExample extends Component {
state = {
modalVisible: false,
}
toggleModal(visible) {
this.setState({ modalVisible: visible });
}
render() {
return (
<View style = {styles.container}>
<Modal animationType = {"slide"} transparent =
{false}
visible = {this.state.modalVisible}
onRequestClose = {() => { console.log("Modal
has been closed.") } }>
this.toggleModal(!this.state.modalVisible)}}>
Paso 1: aplicación
El componente de la aplicación se utilizará para importar y mostrar
nuestro Indicador de actividad .
App.js
Paso 2: ActivityIndicatorExample
La propiedad de animación es un booleano que se usa para mostrar el
indicador de actividad. Este último se cierra seis segundos después de que se
monta el componente. Esto se hace usando la función closeActivityIndicator
() .
activity_indicator_example.js
App.js
Paso 2: lógica
this.state.user se usa para el control del selector.
La función updateUser se activará cuando se elija un usuario.
PickerExample.js
Salida
Si hace clic en el nombre, se le mostrarán las tres opciones:
Y puede elegir uno de ellos y la salida será como.
React Native: barra de estado
En este capítulo, le mostraremos cómo controlar la apariencia de la barra de
estado en React Native.
La barra de estado es fácil de usar y todo lo que necesita hacer es establecer
propiedades para cambiarla.
La propiedad oculta se puede usar para ocultar la barra de estado. En nuestro
ejemplo, se establece en falso . Este es el valor predeterminado.
El barStyle puede tener tres valores - oscuro de contenido, a la luz de
contenido y por defecto .
Este componente tiene varias otras propiedades que se pueden usar. Algunos
de ellos son específicos de Android o IOS. Puedes consultarlo en la
documentación oficial.
App.js
import React, { Component } from 'react';
import { StatusBar } from 'react-native'
const App = () => {
return (
<StatusBar barStyle = "dark-content" hidden = {false}
backgroundColor = "#00BCD4" translucent = {true}/>
)
}
export default App
Si ejecutamos la aplicación, la barra de estado será visible y el contenido
tendrá un color oscuro.
Salida
Paso 2: lógica
Estamos pasando el valor del estado y las funciones para alternar elementos
del interruptor al componente SwitchExample . Las funciones de alternancia
se utilizarán para actualizar el estado.
App.js
Paso 3: presentación
El componente del interruptor toma dos
accesorios. El accesorio onValueChange activará nuestras funciones de
alternancia después de que un usuario presione el interruptor. El valor prop
está vinculado al estado del componente HomeContainer .
switch_example.js
from 'react-native'
export default SwitchExample = (props) => {
return (
<View style = {styles.container}>
<Switch
onValueChange = {props.toggleSwitch1}
value = {props.switch1Value}/>
</View>
)
}
const styles = StyleSheet.create ({
container: {
flex: 1,
alignItems: 'center',
marginTop: 100
}
})
Salida
React Native - Texto
En este capítulo, hablaremos sobre el componente de texto en React Native.
Este componente puede anidarse y puede heredar propiedades de padre a
hijo. Esto puede ser útil de muchas maneras. Le mostraremos ejemplos de
mayúsculas en la primera letra, palabras de estilo o partes del texto, etc.
Paso 2: App.js
En este paso, crearemos un contenedor simple.
App.js
Paso 3: texto
En este paso, utilizaremos el patrón de herencia. styles.text se aplicará a
todos los componentes de texto .
También puede observar cómo configuramos otras propiedades de estilo en
algunas partes del texto. Es importante saber que todos los elementos
secundarios tienen estilos primarios pasados.
text_example.js
<Text>
Ut enim ad <Text style =
{styles.wordBold}>minim </Text> veniam,
quis aliquip ex ea commodo consequat.
</Text>
</View>
)
}
export default TextExample
Paso 1: App.js
import React from 'react'
import AlertExample from './alert_example.js'
Paso 2: alert_example.js
Crearemos un botón para activar la función showAlert .
import React from 'react'
import { Alert, Text, TouchableOpacity, StyleSheet } from
'react-native'
Salida
Cuando haga clic en el botón, verá lo siguiente:
React Native - Geolocalización
En este capítulo, le mostraremos cómo usar la geolocalización .
Paso 1: App.js
import React from 'react'
import GeolocationExample from './geolocation_example.js'
Paso 2: Geolocalización
Comenzaremos configurando el estado inicial para que mantenga la posición
inicial y la última.
Ahora, necesitamos obtener la posición actual del dispositivo cuando se monta
un componente
usando navigator.geolocation.getCurrentPosition . Encriptaremos la
respuesta para que podamos actualizar el estado.
navigator.geolocation.watchPosition se utiliza para rastrear la posición de
los usuarios. También limpiamos a los observadores en este paso.
AsyncStorageExample.js
<Text>
{this.state.initialPosition}
</Text>
Paso 1: presentación
En este paso, crearemos el archivo App.js.
import React from 'react'
import AsyncStorageExample from './async_storage_example.js'
Paso 2: lógica
El nombre del estado inicial es una cadena vacía. Lo actualizaremos desde el
almacenamiento persistente cuando se monte el componente.
setName tomará el texto de nuestro campo de entrada, lo guardará
usando AsyncStorage y actualizará el estado.
async_storage_example.js