पॉप-अप मैसेज बनाना और दिखाना

लिखने का तरीका आज़माएं
Android के लिए, Jetpack Compose हमारा सुझाया गया यूज़र इंटरफ़ेस (यूआई) टूलकिट है. Compose में सूचनाएं जोड़ने का तरीका जानें.

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

कोऑर्डिनेटर लेआउट का इस्तेमाल करें

व्यू से Snackbar अटैच की गई है. Snackbar यदि यह View क्लास, जैसे कि कोई भी सामान्य लेआउट ऑब्जेक्ट हो सकता है. हालांकि, अगर Snackbar किसी CoordinatorLayout, Snackbar को अतिरिक्त सुविधाएं मिलती हैं:

  • उपयोगकर्ता Snackbar को दूर स्वाइप करके उसे खारिज कर सकता है.
  • Snackbar दिखने पर लेआउट, अन्य यूज़र इंटरफ़ेस (यूआई) एलिमेंट की जगह बदल देता है. उदाहरण के लिए, अगर लेआउट में FloatingActionButton, इसके बजाय, लेआउट Snackbar दिखाने पर बटन को ऊपर की ओर ले जाता है बटन के ऊपर Snackbar बनाने के लिए भी किया जा सकता है. इसका तरीका जानने के लिए, इसे पहली इमेज में देखें.

CoordinatorLayout क्लास इसकी मुख्य सुविधा FrameLayout. अगर आपके ऐप्लिकेशन में पहले से ही FrameLayout का इस्तेमाल किया जा रहा है, तो उस लेआउट को बदला जा सकता है पूरे Snackbar को चालू करने के लिए, CoordinatorLayout की मदद से काम करता है. अगर आपका ऐप्लिकेशन दूसरे लेआउट ऑब्जेक्ट का इस्तेमाल करता है, तो अपने मौजूदा लेआउट को रैप करें CoordinatorLayout में एलिमेंट, जैसा कि यहां दिखाया गया है उदाहरण:

<android.support.design.widget.CoordinatorLayout
    android:id="@+id/myCoordinatorLayout"
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <!-- Here are the existing layout elements, now wrapped in
         a CoordinatorLayout. -->
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

        <!-- ...Toolbar, other layouts, other elements... -->

    </LinearLayout>

</android.support.design.widget.CoordinatorLayout>

अपने CoordinatorLayout के लिए android:id टैग सेट करें. मैसेज दिखाते समय, आपको लेआउट के आईडी की ज़रूरत होगी.

पहला डायग्राम. CoordinatorLayout, Snackbar के दिखने पर, FloatingActionButton ऊपर की ओर.

मैसेज दिखाएं

मैसेज दिखाने के दो चरण हैं. सबसे पहले, आपको Snackbar ऑब्जेक्ट, जिसमें मैसेज टेक्स्ट है. फिर, आप उस ऑब्जेक्ट का show() अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है का इस्तेमाल किया जा सकता है.

स्नैकबार ऑब्जेक्ट बनाना

स्टैटिक को कॉल करके Snackbar ऑब्जेक्ट बनाएं Snackbar.make() तरीका. Snackbar बनाते समय, इसके बारे में बताएं दिखाता है और मैसेज दिखाने के लिए कितनी देर का होता है:

Kotlin

val mySnackbar = Snackbar.make(view, stringId, duration)

Java

Snackbar mySnackbar = Snackbar.make(view, stringId, duration);
देखें
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है वह व्यू जिसमें Snackbar को अटैच करना है. तरीका पास किए गए व्यू से क्रम में तब तक देखें, जब तक कि CoordinatorLayout या खिड़की की सजावट का कॉन्टेंट व्यू. आम तौर पर, CoordinatorLayout को पास करना ज़्यादा आसान होता है अपने कॉन्टेंट को बंद करने के लिए.
स्ट्रिंग आईडी
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है जिस मैसेज को दिखाना है उसका संसाधन आईडी. इसे फ़ॉर्मैट किया जा सकता है या फ़ॉर्मैट नहीं किया गया टेक्स्ट.
कुल समय
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है मैसेज दिखाने में लगने वाला समय. यह काम किया जा सकता है LENGTH_SHORT अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है या LENGTH_LONG.

उपयोगकर्ता को मैसेज दिखाएं

Snackbar बनाने के बाद, उसके show() पर कॉल करें इस तरीके से उपयोगकर्ता को Snackbar दिखाया जाएगा:

Kotlin

mySnackbar.show()

Java

mySnackbar.show();

सिस्टम एक ही बार में एक से ज़्यादा Snackbar ऑब्जेक्ट नहीं दिखाता है समय, इसलिए अगर दृश्य वर्तमान में दूसरा Snackbar दिखा रहा है, तो सिस्टम आपके Snackbar को सूची में जोड़ देता है और उसे मौजूदा Snackbar की समयसीमा खत्म हो जाती है या इसे खारिज कर दिया जाता है.

अगर आपको उपयोगकर्ता को मैसेज दिखाना है और आपको Snackbar ऑब्जेक्ट की उपयोगिता विधियां, आपको show() को कॉल करने के बाद Snackbar का संदर्भ देगा. इसके लिए इस वजह से, आम तौर पर मेथड चेनिंग का इस्तेमाल करके, Snackbar का इस्तेमाल एक स्टेटमेंट में करें:

Kotlin

Snackbar.make(
        findViewById(R.id.myCoordinatorLayout),
        R.string.email_sent,
        Snackbar.LENGTH_SHORT
).show()

Java

Snackbar.make(findViewById(R.id.myCoordinatorLayout), R.string.email_sent,
                        Snackbar.LENGTH_SHORT)
        .show();