Componente Slider no React Native: 3 Exemplos Práticos

Componente Slider no React Native: 3 Exemplos Práticos

🎯 O que é o Slider no React Native?

O Slider é um componente gráfico que permite ao usuário selecionar um valor arrastando um botão deslizante horizontalmente. É muito útil quando queremos representar uma faixa de valores, como volume, brilho, opacidade ou qualquer outro parâmetro ajustável.

No React Native, usamos a biblioteca @react-native-community/slider para integrar esse componente com facilidade em nossos aplicativos.


🧪 Exemplo 1 – Slider Simples

Este exemplo é o mais básico. Um slider que varia de 0 a 100 e exibe o valor na tela em tempo real:

image-2 Componente Slider no React Native: 3 Exemplos Práticos

import React, { useState } from 'react';
import { View, Text, StyleSheet } from 'react-native';
import Slider from '@react-native-community/slider';

export default function App() {
  const [valor, setValor] = useState(0);

  return (
    <View style={styles.container}>
      <Text style={styles.title}>Valor: {valor}</Text>
      <Slider
        minimumValue={0}
        maximumValue={100}
        step={1}
        value={valor}
        onValueChange={setValor}
        minimumTrackTintColor="#1E90FF"
        thumbTintColor="#1E90FF"
        style={{ width: 300 }}
      />
    </View>
  );
}

const styles = StyleSheet.create({
  container: { flex: 1, justifyContent: 'center', alignItems: 'center' },
  title: { fontSize: 24 },
});

Explicação: Esse exemplo ajuda o aluno a entender a base do componente Slider, com valores discretos e leitura em tempo real.


🎨 Exemplo 2 – Slider Controlando a Opacidade de uma Imagem

Agora, usamos o slider para controlar a opacidade de uma imagem. Isso mostra como o slider pode ser aplicado a propriedades visuais:

image Componente Slider no React Native: 3 Exemplos Práticos

import React, { useState } from 'react';
import { View, Text, Image, StyleSheet } from 'react-native';
import Slider from '@react-native-community/slider';

export default function App() {
  const [opacidade, setOpacidade] = useState(1);

  return (
    <View style={styles.container}>
      <Text style={styles.title}>Controle de Opacidade</Text>
      <Image
        source={{ uri: 'https://reactnative.dev/img/tiny_logo.png' }}
        style={[styles.image, { opacity: opacidade }]}
      />
      <Slider
        minimumValue={0}
        maximumValue={1}
        value={opacidade}
        onValueChange={setOpacidade}
        minimumTrackTintColor="#32CD32"
        thumbTintColor="#32CD32"
        style={{ width: 300 }}
      />
      <Text>Opacidade: {(opacidade * 100).toFixed(0)}%</Text>
    </View>
  );
}

const styles = StyleSheet.create({
  container: { flex: 1, justifyContent: 'center', alignItems: 'center' },
  image: { width: 150, height: 150, marginBottom: 20 },
  title: { fontSize: 22, marginBottom: 20 },
});

Explicação: A propriedade opacity vai de 0 (invisível) a 1 (totalmente visível). Aqui usamos o slider para modificar isso em tempo real.


🌈 Exemplo 3 – Slider RGB: Criando Cores com Três Sliders

Neste exemplo, usamos três sliders para controlar as cores vermelho, verde e azul (RGB), gerando uma cor de fundo dinâmica.

image-3 Componente Slider no React Native: 3 Exemplos Práticos

import React, { useState } from 'react';
import { View, Text, StyleSheet } from 'react-native';
import Slider from '@react-native-community/slider';

export default function App() {
  const [r, setR] = useState(255);
  const [g, setG] = useState(255);
  const [b, setB] = useState(255);
  const cor = `rgb(${r}, ${g}, ${b})`;

  return (
    <View style={[styles.container, { backgroundColor: cor }]}>
      <Text style={styles.title}>Cor RGB: {cor}</Text>

      <Text>Vermelho: {r}</Text>
      <Slider minimumValue={0} maximumValue={255} value={r} onValueChange={setR} step={1}
              minimumTrackTintColor="red" thumbTintColor="red" />

      <Text>Verde: {g}</Text>
      <Slider minimumValue={0} maximumValue={255} value={g} onValueChange={setG} step={1}
              minimumTrackTintColor="green" thumbTintColor="green" />

      <Text>Azul: {b}</Text>
      <Slider minimumValue={0} maximumValue={255} value={b} onValueChange={setB} step={1}
              minimumTrackTintColor="blue" thumbTintColor="blue" />
    </View>
  );
}

const styles = StyleSheet.create({
  container: { flex: 1, padding: 20, justifyContent: 'center' },
  title: { fontSize: 20, marginBottom: 20, fontWeight: 'bold' },
});

Explicação: Esse exemplo mostra como combinar sliders para controlar múltiplas variáveis. Aqui os alunos veem como criar cores de forma interativa com base em valores RGB.


🚀 Conclusão

O componente Slider é extremamente útil no desenvolvimento de interfaces interativas. Ele pode ser usado em situações simples, como selecionar um valor numérico, ou de forma mais criativa, como ajustar a opacidade ou controlar cores.

Esses três exemplos foram criados para te mostrar o potencial desse componente no React Native. Experimente, modifique os códigos e teste suas ideias!


Professor Washington Paiva – Desenvolvimento de Sistemas

Especialista em Tecnologias Digitais Escrevo sobre como as inovações digitais estão revolucionando e facilitando a vida das pessoas, transformando o cotidiano e abrindo novas possibilidades.

Publicar comentário