Home
Button Mobile Webdesign em Foco
Newsletter Webdesign em Foco
Support Webdesign em Foco
Contribuition Webdesign em Foco
Doe para a Webdesign em Foco
Suporte da Webdesign em Foco
Fechar

Meu Primeiro App com React Native - #07 Screens e Buttons

04/08/2020

Nesse tutorial trabalharemos um pouco mais com React Native e Expo. Hoje falaremos sobre screens e buttons.

Screens e Buttons no React Native

views/index.js

Para facilitar a importação das views, dentro da pasta views vamos criar um arquivo index.js:

import Home from './Home';
import Login from './Login';
import Rastreio from './Rastreio';

export {Home,Login,Rastreio};

E podemos importá-la da seguinte forma:

import {Home,Login,Rastreio} from './views';

Rastreio.js

Criaremos também a view para rastreio das encomendas:

import React from 'react';
import {Text, View, Button} from 'react-native';

export default function Rastreio({navigation}) {

    return (
        <View>
            <Text>Esse é o componente Rastreio</Text>
            <Button
                    title='Ir para Login'
                    onPress={() => navigation.navigate('Login',{
                    id: 30
                })}
            />
        </View>
    );
}

App.js

No App.js chamaremos as screens:

return (
      <NavigationContainer>
        <Stack.Navigator>
          <Stack.Screen
                  name="Home"
                  component={Home}
                  options={{
                  title:"WEFLOG",
                  headerStyle:{backgroundColor:"#F58634"},
                  headerTintColor:'#333',
                  headerTitleStyle:{fontWeight:'bold', alignSelf:'center'}
              }}
          />
          <Stack.Screen name="Login" component={Login} />
          <Stack.Screen name="Rastreio" component={Rastreio} />
          {/*<Stack.Screen name="AreaRestrita" component={AreaRestrita} />*/}
        </Stack.Navigator>
      </NavigationContainer>
  );

Na sequência criaremos dois botões personalizados:

Botões personalizados no React Native

views/Home.js

No componente Home utilizaremos um botão personalizado usando o componente do React que é o componente TouchableOpacity:

import React from 'react';
import {Text, View, Image, TouchableOpacity} from 'react-native';
import {css} from '../assets/css/Css';

export default function Home({navigation}) {

    return (
        <View style={css.container2}>
            <TouchableOpacity style={css.button__home} onPress={() => navigation.navigate('Login')}>
                <Image source={require('../assets/img/buttonLogin.png')}/>
            </TouchableOpacity>

            <TouchableOpacity onPress={() => navigation.navigate('Rastreio')}>
                <Image source={require('../assets/img/buttonRastreio.png')}/>
            </TouchableOpacity>
        </View>
    );
}

Repare que no código acima também utilizamos o componente Image pra chamar os buttons criados em PNG.

assets/css/Css.js

Vamos implementar o container2 no CSS:

container2: {
    flex: 1,
    flexDirection:'row',
    backgroundColor: '#fff',
    alignItems: 'center',
    justifyContent: 'center',
},
button__home:{
    marginRight: 40
}

Por hoje é só turma. Sucesso nos códigos e na vida!

Precisando de assessoria? webdesignemfoco@gmail.com

Receba as aulas da Webdesign em Foco em Seu Email
Suporte Webdesign em Foco

Posts Relacionados

Meu Primeiro App com React Native - #06 Navegação entre Telas
Nesse tutorial iniciaremos a organização do nosso app em screens. Para isso, utilizaremos o módulo React Navigation.
Saiba mais!
Meu Primeiro App com React Native - #08 Tela de Login
No tutorial de hoje realizaremos a criação da screen de login do nosso app com React Native, exibindo o formulário para o usuário.
Saiba mais!
React JS
Nessa seção aprenderemos sobre essa importante biblioteca Javascript desenvolvida pelo Facebook para facilitar a construção backend dos nossos websites.
Saiba mais!