Transform: Pan, Zoom और Rotate
pinch और multi-touch gestures का समर्थन कीजिए।
Transform: Pan, Zoom और Rotate, CoddyKit पर Jetpack Compose Academy का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Jetpack Compose Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Jetpack Compose Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
पिंच, ज़ूम, घुमाएँ
कुछ हावभाव एक साथ दो उँगलियों का उपयोग करते हैं। Compose पैन, ज़ूम और घुमाव को detectTransformGestures नामक एक सहायक में समेटता है। 🤏
एक पहचानकर्ता, तीन मान
pointerInput के भीतर detectTransformGestures आपको पैन के रूप में Offset, ज़ूम के रूप में Float scale और घुमाव को डिग्री में एक साथ देता है।
detectTransformGestures { _, pan, zoom, rotation -> }तीन स्थितियाँ रखें
याद रखी गई स्थिति में एक scale, ऑफ़सेट और घुमाव रखें। हावभाव से हर मान अपडेट करें, ताकि तत्व तुरंत रूपांतरित हो।
var scale by remember { mutableStateOf(1f) }ज़ूम को गुणा करें
ज़ूम मान सापेक्ष होता है, इसलिए उसे बदलने के बजाय अपनी स्केल में गुणा करें। बाहर की ओर पिंच करने से आकार बढ़ता है और अंदर की ओर करने से घटता है।
scale *= zoomघुमाव जोड़ें
घुमाव का अंतर हावभाव के हर चरण में डिग्री में मिलता है। उसे जोड़ते जाएँ, ताकि दो उँगलियों को घुमाने पर सामग्री सहज रूप से घूमे।
angle += rotationपैन से इधर-उधर ले जाएँ
पैन Offset बताता है कि हावभाव का केंद्र कितनी दूर गया। सामग्री को उँगलियों के नीचे सरकाने के लिए इसे अपनी ऑफ़सेट स्थिति में जोड़ें।
offset += pangraphicsLayer से लागू करें
रूपांतरण दिखाने का साफ़ तरीका graphicsLayer संशोधक है। एक ही जगह scaleX, scaleY, rotationZ और translation सेट करें।
Modifier.graphicsLayer(scaleX = scale, scaleY = scale, rotationZ = angle)लेयर के भीतर अनुवाद करें
graphicsLayer के भीतर अपने ऑफ़सेट से translationX और translationY सेट करें। इससे महँगा लेआउट चरण चलाए बिना रूपांतरण होता है।
translationX = offset.x; translationY = offset.yस्केल सीमित करें
उपयोगकर्ता बहुत अधिक पिंच कर सकते हैं, इसलिए coerceIn से अपनी स्केल को उचित सीमाओं में सीमित करें। इससे सामग्री गायब होने या पूरी दुनिया जितनी बड़ी होने से बचती है।
scale = scale.coerceIn(0.5f, 5f)कार्रवाइयों का क्रम
graphicsLayer पहले scale, फिर घुमाव और अंत में अनुवाद लागू करता है। यह क्रम जानने से आप अनुमान लगा सकते हैं कि रूपांतरित सामग्री कहाँ पहुँचेगी।
केंद्र के आसपास
डिफ़ॉल्ट रूप से रूपांतरण तत्व के केंद्र के आसपास होता है। किसी अन्य बिंदु के आसपास ज़ूम और घुमाव करने के लिए graphicsLayer में transformOrigin समायोजित करें।
Modifier.graphicsLayer(transformOrigin = TransformOrigin(0f, 0f))त्वरित जाँच
आने वाले ज़ूम मान को अपनी स्केल स्थिति में कैसे लागू करना चाहिए?
पुनरावलोकन: बहु-स्पर्श का कमाल
आपने पैन, ज़ूम और घुमाव के लिए detectTransformGestures का उपयोग किया, फिर उन्हें सीमित करके graphicsLayer के माध्यम से लागू किया। पिंच-टू-ज़ूम अब आपका है। 🎉
एआई शिक्षक के साथ Kotlin सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 30
- पाठ
- 120
अक्सर पूछे जाने वाले प्रश्न
क्या “Transform: Pan, Zoom और Rotate” पाठ निःशुल्क है?
हाँ—“Transform: Pan, Zoom और Rotate” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Jetpack Compose Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Jetpack Compose Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“Transform: Pan, Zoom और Rotate” में मैं क्या सीखूँगा?
pinch और multi-touch gestures का समर्थन कीजिए। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Jetpack Compose Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या Jetpack Compose Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Jetpack Compose Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।
“Transform: Pan, Zoom और Rotate” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस Jetpack Compose Academy पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर Jetpack Compose Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- pointerInput और detectTapGestures
- Drag, Swipe और Fling
- Transform: Pan, Zoom और Rotate
- Nested Scroll Connections