बॉटम शीट का कुछ हिस्सा

बॉटम शीट का कुछ हिस्सा दिखाया जा सकता है. इसके बाद, उपयोगकर्ता को या तो उसे बनाने की अनुमति दी जा सकती है फ़ुल स्क्रीन मोड पर स्विच करें या उसे खारिज करें.

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

नतीजे

जब उपयोगकर्ता पहली बार बटन दबाता है, तो शीट का कुछ हिस्सा दिखता है:

बॉटम शीट, जो शुरुआत में सिर्फ़ स्क्रीन के कुछ हिस्से को भरती है. उपयोगकर्ता स्क्रीन को भरने के लिए स्वाइप कर सकता है या इसे खारिज कर सकता है
पहली इमेज. बॉटम शीट का कुछ हिस्सा दिखाया गया है.

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

स्क्रीन को भरने के लिए, उपयोगकर्ता ने बड़ी की गई बॉटम शीट.
दूसरी इमेज. फ़ुल-स्क्रीन में दिखने वाली सबसे नीचे की शीट.

अन्य संसाधन