आपके पास बॉटम शीट को कुछ हद तक दिखाने का विकल्प होता है. इसके बाद, उपयोगकर्ता के पास इसे फ़ुल स्क्रीन पर दिखाने या खारिज करने का विकल्प होता है.
इसके लिए, अपने ModalBottomSheet को SheetState का एक इंस्टेंस पास करें. साथ ही, skipPartiallyExpanded को false पर सेट करें.
उदाहरण
इस उदाहरण में दिखाया गया है कि ModalBottomSheet की sheetState प्रॉपर्टी का इस्तेमाल करके, शुरुआत में शीट को सिर्फ़ कुछ हद तक कैसे दिखाया जा सकता है:
@Composable fun PartialBottomSheet() { var showBottomSheet by remember { mutableStateOf(false) } val sheetState = rememberModalBottomSheetState( skipPartiallyExpanded = false, ) Column( modifier = Modifier.fillMaxWidth(), horizontalAlignment = Alignment.CenterHorizontally, ) { Button( onClick = { showBottomSheet = true } ) { Text("Display partial bottom sheet") } if (showBottomSheet) { ModalBottomSheet( modifier = Modifier.fillMaxHeight(), sheetState = sheetState, onDismissRequest = { showBottomSheet = false } ) { Text( "Swipe up to open sheet. Swipe down to dismiss.", modifier = Modifier.padding(16.dp) ) } } } }
कोड के बारे में अहम बातें
इस उदाहरण में, इन बातों का ध्यान रखें:
showBottomSheetयह कंट्रोल करता है कि ऐप्लिकेशन, बॉटम शीट दिखाता है या नहीं.sheetState,SheetStateका एक इंस्टेंस है, जहांskipPartiallyExpandedकी वैल्यू false है.ModalBottomSheetएक मॉडिफ़ायर लेता है. इससे यह पक्का होता है कि पूरी तरह से बड़ा किए जाने पर, यह स्क्रीन पर पूरी तरह से दिखे.ModalBottomSheet, अपनेsheetStateपैरामीटर के लिएsheetStateको वैल्यू के तौर पर लेता है.- इस वजह से, पहली बार खोलने पर शीट पूरी तरह से नहीं दिखती. इसके बाद, उपयोगकर्ता इसे खींचकर या स्वाइप करके फ़ुल स्क्रीन पर देख सकता है या बंद कर सकता है.
onDismissRequestलैंबडा, यह कंट्रोल करता है कि जब उपयोगकर्ता बॉटम शीट को खारिज करने की कोशिश करता है, तो क्या होता है. इस मामले में, सिर्फ़ शीट हटाई जाती है.
नतीजे
जब उपयोगकर्ता पहली बार बटन दबाता है, तो शीट कुछ इस तरह दिखती है:
अगर उपयोगकर्ता शीट पर ऊपर की ओर स्वाइप करता है, तो यह पूरी स्क्रीन पर दिखती है: