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

এপিআই সারফেস
 সেগমেন্টেড বোতাম তৈরি করতে SingleChoiceSegmentedButtonRow এবং MultiChoiceSegmentedButtonRow লেআউট ব্যবহার করুন। এই লেআউটগুলি SegmentedButton এর অবস্থান এবং আকার সঠিকভাবে নির্ধারণ করে এবং নিম্নলিখিত মূল পরামিতিগুলি ভাগ করে:
-  space: বোতামগুলির মধ্যে ওভারল্যাপ সামঞ্জস্য করে।
-  content: সেগমেন্টেড বোতাম সারির কন্টেন্ট ধারণ করে, যা সাধারণতSegmentedButtons এর একটি ক্রম।
একটি একক-নির্বাচন সেগমেন্টেড বোতাম তৈরি করুন
এই উদাহরণে দেখানো হয়েছে কিভাবে একটি একক-নির্বাচিত সেগমেন্টেড বোতাম তৈরি করতে হয়:
@Composable fun SingleChoiceSegmentedButton(modifier: Modifier = Modifier) { var selectedIndex by remember { mutableIntStateOf(0) } val options = listOf("Day", "Month", "Week") SingleChoiceSegmentedButtonRow { options.forEachIndexed { index, label -> SegmentedButton( shape = SegmentedButtonDefaults.itemShape( index = index, count = options.size ), onClick = { selectedIndex = index }, selected = index == selectedIndex, label = { Text(label) } ) } } }
কোড সম্পর্কে গুরুত্বপূর্ণ বিষয়সমূহ
-  নির্বাচিত বোতাম সূচক ট্র্যাক করার জন্য rememberএবংmutableIntStateOfব্যবহার করে একটিselectedIndexভেরিয়েবল আরম্ভ করে।
-  বোতাম লেবেল প্রতিনিধিত্বকারী optionsএকটি তালিকা সংজ্ঞায়িত করে।
-  SingleChoiceSegmentedButtonRowআপনাকে শুধুমাত্র একটি বোতাম নির্বাচন করতে দেয়।
-  forEachIndexedলুপের ভিতরে প্রতিটি বিকল্পের জন্য একটিSegmentedButtonতৈরি করে:-  SegmentedButtonDefaults.itemShapeব্যবহার করে বোতামের সূচী এবং মোট বিকল্পের সংখ্যার উপর ভিত্তি করেshapeতার আকৃতি নির্ধারণ করে।
-  onClickক্লিক করা বোতামের সূচীর সাথেselectedIndexআপডেট করে।
-  selectedselectedIndexউপর ভিত্তি করে বোতামের নির্বাচনের অবস্থা সেট করে।
-  labelTextকম্পোজেবল ব্যবহার করে বোতাম লেবেল প্রদর্শন করে।
 
-  
ফলাফল

একাধিক-নির্বাচন সেগমেন্টেড বোতাম তৈরি করুন
এই উদাহরণে দেখানো হয়েছে কিভাবে আইকন সহ একটি মাল্টি-চয়েস সেগমেন্টেড বোতাম তৈরি করতে হয় যা ব্যবহারকারীদের একাধিক বিকল্প নির্বাচন করতে দেয়:
@Composable fun MultiChoiceSegmentedButton(modifier: Modifier = Modifier) { val selectedOptions = remember { mutableStateListOf(false, false, false) } val options = listOf("Walk", "Ride", "Drive") MultiChoiceSegmentedButtonRow { options.forEachIndexed { index, label -> SegmentedButton( shape = SegmentedButtonDefaults.itemShape( index = index, count = options.size ), checked = selectedOptions[index], onCheckedChange = { selectedOptions[index] = !selectedOptions[index] }, icon = { SegmentedButtonDefaults.Icon(selectedOptions[index]) }, label = { when (label) { "Walk" -> Icon( imageVector = Icons.AutoMirrored.Filled.DirectionsWalk, contentDescription = "Directions Walk" ) "Ride" -> Icon( imageVector = Icons.Default.DirectionsBus, contentDescription = "Directions Bus" ) "Drive" -> Icon( imageVector = Icons.Default.DirectionsCar, contentDescription = "Directions Car" ) } } ) } } }
কোড সম্পর্কে গুরুত্বপূর্ণ বিষয়সমূহ
-  কোডটি rememberএবংmutableStateListOfব্যবহার করেselectedOptionsভেরিয়েবলটি ইনিশিয়ালাইজ করে। এটি প্রতিটি বোতামের নির্বাচিত অবস্থা ট্র্যাক করে।
-  কোডটি বোতামগুলি ধারণ করার জন্য MultiChoiceSegmentedButtonRowব্যবহার করে।
-  forEachIndexedলুপের ভেতরে, কোডটি প্রতিটি বিকল্পের জন্য একটিSegmentedButtonতৈরি করে:-  shapeবোতামের আকৃতি তার সূচক এবং বিকল্পের মোট সংখ্যার উপর ভিত্তি করে নির্ধারণ করে।
-  checkedselectedOptionsএর সংশ্লিষ্ট মানের উপর ভিত্তি করে বোতামের চেক করা অবস্থা সেট করে।
-  onCheckedChangeবোতামটি ক্লিক করলেselectedOptionsএ সংশ্লিষ্ট আইটেমের নির্বাচিত অবস্থা টগল করে।
-  iconSegmentedButtonDefaults.Iconএবং বোতামের চেক করা অবস্থার উপর ভিত্তি করে একটি আইকন প্রদর্শন করে।
-  labelলেবেলের সাথে সম্পর্কিত একটি আইকন প্রদর্শন করে, উপযুক্ত চিত্র ভেক্টর এবং বিষয়বস্তুর বর্ণনা সহIconকম্পোজেবল ব্যবহার করে।
 
-  
ফলাফল

অতিরিক্ত সম্পদ
- উপাদান ৩: খণ্ডিত বোতাম
