সুইচ

Switch কম্পোনেন্ট ব্যবহারকারীদের দুটি অবস্থার মধ্যে টগল করার সুযোগ দেয়: চেক করা এবং আনচেক করা। আপনার অ্যাপে আপনি একটি সুইচ ব্যবহার করে ব্যবহারকারীকে নিম্নলিখিতগুলির মধ্যে একটি করতে দিতে পারেন:

  • একটি সেটিং চালু বা বন্ধ করুন।
  • একটি বৈশিষ্ট্য সক্রিয় বা নিষ্ক্রিয় করুন।
  • একটি বিকল্প নির্বাচন করুন।

এই কম্পোনেন্টটির দুটি অংশ রয়েছে: থাম্ব এবং ট্র্যাক। থাম্ব হল সুইচের টেনে আনার যোগ্য অংশ, এবং ট্র্যাক হল ব্যাকগ্রাউন্ড। ব্যবহারকারী সুইচের অবস্থা পরিবর্তন করতে থাম্বটিকে বাম বা ডানে টেনে আনতে পারেন। তারা সুইচটি চেক এবং পরিষ্কার করার জন্যও ট্যাপ করতে পারেন।

হালকা এবং অন্ধকার উভয় মোডে সুইচ উপাদানের উদাহরণ।
চিত্র ১. সুইচ উপাদান।

মৌলিক বাস্তবায়ন

সম্পূর্ণ API সংজ্ঞার জন্য Switch রেফারেন্স দেখুন। আপনার ব্যবহার করার জন্য প্রয়োজনীয় কিছু মূল প্যারামিটার নিচে দেওয়া হল:

  • checked : সুইচের প্রাথমিক অবস্থা।
  • onCheckedChange : একটি কলব্যাক যা সুইচের অবস্থা পরিবর্তন হলে কল করা হয়।
  • enabled : সুইচটি সক্রিয় নাকি নিষ্ক্রিয়।
  • colors : সুইচের জন্য ব্যবহৃত রঙ।

নিম্নলিখিত উদাহরণটি Switch কম্পোজেবলের একটি ন্যূনতম বাস্তবায়ন।

@Composable
fun SwitchMinimalExample() {
    var checked by remember { mutableStateOf(true) }

    Switch(
        checked = checked,
        onCheckedChange = {
            checked = it
        }
    )
}

চেক না করলে এই বাস্তবায়নটি নিম্নরূপ প্রদর্শিত হবে:

একটি মৌলিক সুইচ যা চেক করা নেই।
চিত্র ২। একটি আনচেক করা সুইচ।

চেক করার সময় এটির উপস্থিতি:

একটি মৌলিক সুইচ যা চেক করা হয়েছে।
চিত্র ৩. একটি চেক করা সুইচ।

উন্নত বাস্তবায়ন

আরও উন্নত সুইচ বাস্তবায়নের সময় আপনি যে প্রাথমিক পরামিতিগুলি ব্যবহার করতে চাইতে পারেন তা হল:

  • thumbContent : থাম্ব চেক করার সময় এর চেহারা কাস্টমাইজ করতে এটি ব্যবহার করুন।
  • colors : ট্র্যাক এবং থাম্বের রঙ কাস্টমাইজ করতে এটি ব্যবহার করুন।

কাস্টম থাম্ব

আপনি একটি কাস্টম থাম্ব তৈরি করতে thumbContent প্যারামিটারের জন্য যেকোনো কম্পোজেবল পাস করতে পারেন। নীচে একটি সুইচের উদাহরণ দেওয়া হল যা তার থাম্বের জন্য একটি কাস্টম আইকন ব্যবহার করে:

@Composable
fun SwitchWithIconExample() {
    var checked by remember { mutableStateOf(true) }

    Switch(
        checked = checked,
        onCheckedChange = {
            checked = it
        },
        thumbContent = if (checked) {
            {
                Icon(
                    imageVector = Icons.Filled.Check,
                    contentDescription = null,
                    modifier = Modifier.size(SwitchDefaults.IconSize),
                )
            }
        } else {
            null
        }
    )
}

এই বাস্তবায়নে, অচিহ্নিত উপস্থিতি পূর্ববর্তী বিভাগের উদাহরণের মতোই। তবে, চেক করা হলে, এই বাস্তবায়নটি নিম্নরূপ প্রদর্শিত হবে:

একটি সুইচ যা টিক চিহ্ন দেওয়ার সময় একটি কাস্টম আইকন প্রদর্শনের জন্য thumbContent প্যারামিটার ব্যবহার করে।
চিত্র ৪। একটি কাস্টম চেক করা আইকন সহ একটি সুইচ।

কাস্টম রঙ

নিচের উদাহরণটি দেখায় যে কীভাবে আপনি রঙের প্যারামিটার ব্যবহার করে সুইচের থাম্ব এবং ট্র্যাকের রঙ পরিবর্তন করতে পারেন, সুইচটি চেক করা আছে কিনা তা বিবেচনা করে।

@Composable
fun SwitchWithCustomColors() {
    var checked by remember { mutableStateOf(true) }

    Switch(
        checked = checked,
        onCheckedChange = {
            checked = it
        },
        colors = SwitchDefaults.colors(
            checkedThumbColor = MaterialTheme.colorScheme.primary,
            checkedTrackColor = MaterialTheme.colorScheme.primaryContainer,
            uncheckedThumbColor = MaterialTheme.colorScheme.secondary,
            uncheckedTrackColor = MaterialTheme.colorScheme.secondaryContainer,
        )
    )
}

এই বাস্তবায়নটি নিম্নরূপ দেখাচ্ছে:

একটি সুইচ যা রঙের প্যারামিটার ব্যবহার করে থাম্ব এবং ট্র্যাক উভয়ের জন্য কাস্টম রঙের একটি সুইচ প্রদর্শন করে।
চিত্র ৫। কাস্টম রঙের একটি সুইচ।

অতিরিক্ত সম্পদ