पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर और सिस्टम ऐनिमेशन की सुविधा, डिफ़ॉल्ट रूप से चालू होती है. अगर आपका ऐप्लिकेशन पीछे जाने के इवेंट को इंटरसेप्ट करता है और आपने पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर की सुविधा के लिए माइग्रेट नहीं किया है, तो अपने ऐप्लिकेशन को अपडेट करें. इससे, पीछे जाने के लिए इस्तेमाल किए जाने वाले एपीआई का इस्तेमाल किया जा सकेगा
सिस्टम के डिफ़ॉल्ट ऐनिमेशन चालू करना
Android 15 और इसके बाद के वर्शन वाले डिवाइसों पर, पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर की मदद से, होम पेज पर वापस जाने, ऐप्लिकेशन में मौजूद अलग-अलग गतिविधि देखने, और अलग-अलग ऐप्लिकेशन पर काम करने से जुड़े सिस्टम ऐनिमेशन उपलब्ध हैं. ये ऐनिमेशन, उन ऐप्लिकेशन के लिए उपलब्ध हैं जिन्होंने पीछे जाने के लिए इस्तेमाल किए जाने वाले एपीआई पर माइग्रेट किया है.
- होम पेज पर वापस जाना: इससे उपयोगकर्ता होम स्क्रीन पर वापस जा सकता है.
- ऐप्लिकेशन में मौजूद अलग-अलग गतिविधि देखना: इससे उपयोगकर्ता, ऐप्लिकेशन में मौजूद अलग-अलग गतिविधि के बीच ट्रांज़िशन कर सकता है.
- अलग-अलग ऐप्लिकेशन पर काम करना: इससे उपयोगकर्ता, अलग-अलग ऐप्लिकेशन पर काम करने के बीच ट्रांज़िशन कर सकता है.
Android 15 और इसके बाद के वर्शन वाले डिवाइसों पर, ये ऐनिमेशन डिफ़ॉल्ट रूप से चालू होते हैं. Android 13 या 14 पर चलने वाले डिवाइसों पर, उपयोगकर्ता इन्हें डेवलपर के लिए सेटिंग और टूल की मदद से चालू कर सकते हैं.
सिस्टम ऐनिमेशन पाने के लिए, अपनी AndroidX Activity डिपेंडेंसी
को 1.6.0 या इसके बाद के वर्शन पर अपडेट करें.
Navigation Compose के साथ, पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर की सुविधा चालू करना
Navigation Compose में, पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर की सुविधा का इस्तेमाल करने के लिए, पक्का करें कि आपके पास
navigation-compose 2.8.0
या इसके बाद की लाइब्रेरी हो.
जब उपयोगकर्ता स्वाइप करके पीछे जाता है, तो Navigation Compose, स्क्रीन के बीच अपने-आप क्रॉस-फ़ेड हो जाता है:
नेविगेट करते समय,
popEnterTransition और popExitTransition की मदद से, पसंद के मुताबिक ट्रांज़िशन बनाए जा सकते हैं. NavHost पर लागू होने पर, इन मॉडिफ़ायर की मदद से यह तय किया जा सकता है कि स्क्रीन पर आने और जाने वाले ऐनिमेशन कैसे दिखें. इनका इस्तेमाल, अलग-अलग इफ़ेक्ट बनाने के लिए किया जा सकता है. जैसे, स्केल करना, फ़ेड करना या स्लाइड करना.
इस उदाहरण में, popExitTransition में scaleOut का इस्तेमाल किया गया है. इससे, उपयोगकर्ता के पीछे जाने पर, जाने वाली स्क्रीन को स्केल डाउन किया जाता है. इसके अलावा, transformOrigin पैरामीटर से यह तय होता है कि स्केलिंग ऐनिमेशन किस पॉइंट के आस-पास होता है. डिफ़ॉल्ट रूप से, यह स्क्रीन का बीच वाला हिस्सा (0.5f, 0.5f) होता है. इस वैल्यू को अडजस्ट करके, स्केलिंग को किसी दूसरे पॉइंट से शुरू किया जा सकता है.
NavHost( navController = navController, startDestination = Home, popExitTransition = { scaleOut( targetScale = 0.9f, transformOrigin = TransformOrigin(pivotFractionX = 0.5f, pivotFractionY = 0.5f) ) }, popEnterTransition = { EnterTransition.None }, modifier = modifier, )
इस कोड से यह नतीजा मिलता है:
popEnterTransition और popExitTransition खास तौर पर, पिछली ऐक्टिविटी को मैनेज करने के लिए इस्तेमाल किए जाते हैं. जैसे, पीछे जाने के जेस्चर का इस्तेमाल करने पर, ऐनिमेशन को कंट्रोल किया जाता है. enterTransition और exitTransition का इस्तेमाल, कंपोज़ेबल में आने और जाने के ऐनिमेशन तय करने के लिए भी किया जा सकता है. ये ऐनिमेशन, सिर्फ़ पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर के लिए नहीं होते. अगर आपने सिर्फ़ enterTransition और exitTransition सेट किए हैं, तो इनका इस्तेमाल सामान्य नेविगेशन और पिछली ऐक्टिविटी को मैनेज करने, दोनों के लिए किया जाता है. हालांकि, popEnterTransition और popExitTransition का इस्तेमाल करके, पीछे जाने के लिए अलग-अलग ऐनिमेशन बनाए जा सकते हैं.
शेयर किए गए एलिमेंट के ट्रांज़िशन के साथ इंटिग्रेट करना
शेयर किए गए एलिमेंट के ट्रांज़िशन, शेयर किए गए कॉन्टेंट वाले कंपोज़ेबल के बीच, विज़ुअल कनेक्शन को बेहतर बनाते हैं. इनका इस्तेमाल अक्सर नेविगेशन के लिए किया जाता है.
Navigation Compose के साथ शेयर किए गए एलिमेंट का इस्तेमाल करने के लिए, शेयर किए गए एलिमेंट के साथ, पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर की सुविधा देखें.
मटीरियल कंपोज़ कॉम्पोनेंट के साथ, पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर की सुविधा का इस्तेमाल करना
मटीरियल कंपोज़ लाइब्रेरी में मौजूद कई कॉम्पोनेंट, पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर के साथ आसानी से काम करने के लिए डिज़ाइन किए गए हैं. इन कॉम्पोनेंट में, पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर के ऐनिमेशन चालू करने के लिए, अपने प्रोजेक्ट में, Material3 की नई डिपेंडेंसी (androidx.compose.material3:material3-*:1.3.0 या इसके बाद का वर्शन) शामिल करें.
मटीरियल कॉम्पोनेंट में, पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर के ऐनिमेशन की सुविधा काम करती है. इनमें ये शामिल हैं:
SearchBarModalBottomSheetModalDrawerSheet/DismissibleDrawerSheetModalNavigationDrawer/DismissibleNavigationDrawer
SearchBar और ModalBottomSheet,
पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर के साथ अपने-आप ऐनिमेट होते हैं. ModalNavigationDrawer,
ModalDrawerSheet, DismissibleDrawerSheet, और
DismissibleNavigationDrawer के लिए, आपको उनके शीट कॉन्टेंट कंपोज़ेबल में drawerState पास करना होगा.
पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर के ऐनिमेशन की जांच करना
अगर अब भी Android 13 या Android 14 का इस्तेमाल किया जा रहा है, तो होम पेज पर वापस जाने के ऐनिमेशन की जांच की जा सकती है.
इस ऐनिमेशन की जांच करने के लिए, यह तरीका अपनाएं:
- अपने डिवाइस पर, सेटिंग > सिस्टम > डेवलपर के लिए सेटिंग और टूल पर जाएं.
- पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर के ऐनिमेशन चुनें.
- अपडेट किया गया ऐप्लिकेशन लॉन्च करें और ऐनिमेशन देखने के लिए, पीछे जाने के जेस्चर का इस्तेमाल करें.
Android 15 और इसके बाद के वर्शन वाले डिवाइसों पर, यह सुविधा डिफ़ॉल्ट रूप से चालू होती है.
अन्य संसाधन
- पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर के ऐनिमेशन जोड़ने का कोडलैब
- Compose में, लेआउट के बेहतर ऐनिमेशन दिखाने वाला वीडियो