बॉटम शीट का कुछ हिस्सा दिखाया जा सकता है. इसके बाद, उपयोगकर्ता को या तो उसे बनाने की अनुमति दी जा सकती है फ़ुल स्क्रीन मोड पर स्विच करें या उसे खारिज करें.
ऐसा करने के लिए, 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
गलत है.ModalBottomSheet
में एक मॉडिफ़ायर होता है, जिससे यह पक्का होता है कि पूरी तरह से बड़ा किए जाने पर, यह स्क्रीन को भर दे.ModalBottomSheet
अपनीsheetState
की वैल्यू के रूप मेंsheetState
को लेता है पैरामीटर.- इस वजह से, पहली बार खोलने पर शीट का सिर्फ़ कुछ हिस्सा दिखता है. इसके बाद, उपयोगकर्ता इसे फ़ुल स्क्रीन में देखने या हटाने के लिए, खींच सकता है या स्वाइप कर सकता है.
onDismissRequest
लैम्ब्डा फ़ंक्शन से यह तय होता है कि जब उपयोगकर्ता सबसे नीचे मौजूद शीट को हटाने की कोशिश करता है, तो क्या होता है. इस मामले में, सिर्फ़ शीट हटती है.
नतीजे
जब उपयोगकर्ता पहली बार बटन दबाता है, तो शीट का कुछ हिस्सा दिखता है:

अगर उपयोगकर्ता शीट पर ऊपर की ओर स्वाइप करता है, तो वह स्क्रीन को भर देती है:
