Picker, Switch, Slider Components

🎛️ React Native Picker, Switch & Slider Components (TypeScript)

React Native অ্যাপে Picker, Switch ও Slider খুবই গুরুত্বপূর্ণ UI Components। এগুলো ব্যবহার করে ইউজার সহজে অপশন নির্বাচন, অন/অফ টগল এবং ভ্যালু কন্ট্রোল করতে পারে। এই টিউটোরিয়ালে আমরা TypeScript ব্যবহার করে file-based ভাবে প্রতিটি component বুঝবো।


📌 1. Picker Component

Picker ব্যবহার করা হয় যখন ইউজারকে একাধিক অপশন থেকে একটি নির্বাচন করতে দিতে হয় (যেমন: Gender, Country, Language ইত্যাদি)।

📁 File: components/CustomPicker.tsx

import { View, Text } from 'react-native';
import { Picker } from '@react-native-picker/picker';
import { useState } from 'react';

const CustomPicker = (): JSX.Element => {
  const [language, setLanguage] = useState<string>('js');

  return (
    <View>
      <Text>Selected: {language}</Text>
      <Picker
        selectedValue={language}
        onValueChange={(itemValue) => setLanguage(itemValue)}
      >
        <Picker.Item label="JavaScript" value="js" />
        <Picker.Item label="TypeScript" value="ts" />
        <Picker.Item label="Python" value="py" />
      </Picker>
    </View>
  );
};

export default CustomPicker;
    
🔍 Output:

ইউজার Picker থেকে একটি language নির্বাচন করলে উপরে সেই value রিয়েল-টাইমে দেখাবে।

📌 2. Switch Component

Switch মূলত ON / OFF বা true / false স্টেট কন্ট্রোল করার জন্য ব্যবহৃত হয়। যেমন: Dark Mode, Notifications Enable ইত্যাদি।

📁 File: components/ThemeSwitch.tsx

import { View, Text, Switch } from 'react-native';
import { useState } from 'react';

const ThemeSwitch = (): JSX.Element => {
  const [isEnabled, setIsEnabled] = useState<boolean>(false);

  return (
    <View>
      <Text>Dark Mode: {isEnabled ? 'ON' : 'OFF'}</Text>
      <Switch
        value={isEnabled}
        onValueChange={setIsEnabled}
        trackColor={{ false: '#ccc', true: '#0d9488' }}
        thumbColor={isEnabled ? '#14b8a6' : '#f4f3f4'}
      />
    </View>
  );
};

export default ThemeSwitch;
    
🔍 Output:

Switch অন করলে "Dark Mode: ON" এবং অফ করলে "Dark Mode: OFF" দেখাবে।

📌 3. Slider Component

Slider ব্যবহার করা হয় কোনো numeric value ধীরে ধীরে পরিবর্তনের জন্য। যেমন: Volume, Brightness, Price Range ইত্যাদি।

📁 File: components/VolumeSlider.tsx

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

const VolumeSlider = (): JSX.Element => {
  const [volume, setVolume] = useState<number>(50);

  return (
    <View>
      <Text>Volume: {volume}</Text>
      <Slider
        minimumValue={0}
        maximumValue={100}
        value={volume}
        onValueChange={(value) => setVolume(Math.round(value))}
        minimumTrackTintColor="#14b8a6"
        maximumTrackTintColor="#99f6e4"
      />
    </View>
  );
};

export default VolumeSlider;
    
🔍 Output:

Slider টানলে Volume value 0–100 এর মধ্যে পরিবর্তিত হয়ে স্ক্রিনে দেখাবে।

✅ Summary (মনে রাখবেন)

  • Picker → একাধিক অপশন থেকে একটি নির্বাচন
  • Switch → Boolean (ON/OFF) কন্ট্রোল
  • Slider → Numeric value কন্ট্রোল
  • সব উদাহরণ TypeScript ব্যবহার করে করা হয়েছে
  • File-based structure ব্যবহার করলে কোড পরিষ্কার থাকে
👼 Quiz
/

লোড হচ্ছে...