অ্যান্ড্রয়েড জেটপ্যাকের নেভিগেশন কম্পোনেন্ট জেটপ্যাক কম্পোজ অ্যাপ্লিকেশনের জন্য সমর্থন প্রদান করে। নেভিগেশন কম্পোনেন্টের অবকাঠামো এবং বৈশিষ্ট্যগুলির সুবিধা গ্রহণ করে আপনি কম্পোজেবলগুলির মধ্যে নেভিগেট করতে পারেন।
এই পৃষ্ঠাটি Wear OS এর জন্য Compose-এ Jetpack Navigation-এর সাথে পার্থক্যগুলি বর্ণনা করে।
সেটআপ
আপনার অ্যাপ মডিউলের build.gradle ফাইলে নিম্নলিখিত নির্ভরতা ব্যবহার করুন:
কোটলিন
dependencies { def wear_compose_version = "1.5.6" implementation "androidx.wear.compose:compose-navigation:$wear_compose_version" }
এটি androidx.navigation:navigation-compose আর্টিফ্যাক্টের পরিবর্তে ব্যবহার করা হয়েছে কারণ এটি Wear OS-এর জন্য নির্দিষ্ট বিকল্প বাস্তবায়ন প্রদান করে।
একটি নেভিগেশন কন্ট্রোলার, হোস্ট এবং গ্রাফ তৈরি করুন
ওয়্যার ওএসের জন্য কম্পোজ দিয়ে নেভিগেট করার জন্য নন-ওয়্যার ওএস অ্যাপগুলিতে প্রয়োজনীয় তিনটি উপাদানের প্রয়োজন: নেভিগেশন কন্ট্রোলার, হোস্ট এবং গ্রাফ।
Wear OS অ্যাপ্লিকেশনের জন্য উপযুক্ত NavController এর একটি বাস্তবায়ন, WearNavigator এর একটি উদাহরণ তৈরি করতে rememberSwipeDismissableNavController() ব্যবহার করুন:
val navController = rememberSwipeDismissableNavController()
NavController হল Compose অ্যাপ্লিকেশনগুলিতে নেভিগেট করার জন্য ব্যবহৃত প্রাথমিক API। এটি নেভিগেশন হোস্টে কম্পোজেবলগুলির মধ্যে নেভিগেট নিয়ন্ত্রণ করে, যা Wear OS-এ SwipeDismissableNavHost ।
val navController = rememberSwipeDismissableNavController() SwipeDismissableNavHost( navController = navController, startDestination = "message_list" ) { // TODO: build navigation graph }
NavHost composable এর মতো, এটিতে নেভিগেশন কন্ট্রোলার, শুরুর গন্তব্যের রুট এবং নেভিগেশন গ্রাফের জন্য বিল্ডারের একটি রেফারেন্স লাগে যা এখানে একটি ট্রেলিং ল্যাম্বডা হিসাবে দেখানো হয়েছে।
নেভিগেশন গ্রাফ বিল্ডারে শুরুর গন্তব্যস্থলটি অবশ্যই প্রদান করতে হবে, এবং অন্যান্য সমস্ত গন্তব্যস্থলের সাথে যা নেভিগেশন কন্ট্রোলারের সাহায্যে নেভিগেট করা উচিত।
আপনার Wear OS অ্যাপে,SwipeDismissableNavHost AppScaffold এর একটি কন্টেন্ট হিসেবে ঘোষণা করুন যাতে সময়, স্ক্রোল বা অবস্থান নির্দেশক এবং পৃষ্ঠা নির্দেশকের মতো শীর্ষ-স্তরের উপাদানগুলি সমর্থন করা যায়। স্ক্রিন স্তরে SwipeDismissableNavHost এবং ScreenScaffold এর উপরে একটি AppScaffold অবজেক্ট ব্যবহার করুন যাতে ডিফল্টভাবে স্ক্রিনে একটি TimeText অবজেক্ট যোগ করা যায় এবং স্ক্রিনগুলির মধ্যে নেভিগেট করার সময় এটি সঠিকভাবে অ্যানিমেট হয় তা নিশ্চিত করা যায়। অতিরিক্তভাবে, ScreenScaffold স্ক্রোলযোগ্য কন্টেন্টের জন্য একটি PositionIndicator যোগ করে। AppScaffold { val navController = rememberSwipeDismissableNavController() SwipeDismissableNavHost( navController = navController, startDestination = "message_list" ) { composable("message_list") { MessageList(onMessageClick = { id -> navController.navigate("message_detail/$id") }) } composable("message_detail/{id}") { MessageDetail(id = it.arguments?.getString("id")!!) } } } } // Implementation of one of the screens in the navigation @Composable fun MessageDetail(id: String) { // .. Screen level content goes here val scrollState = rememberTransformingLazyColumnState() val padding = rememberResponsiveColumnPadding( first = ColumnItemType.BodyText ) ScreenScaffold( scrollState = scrollState, contentPadding = padding ) { scaffoldPaddingValues -> // Screen content goes here // ...
জেটপ্যাক নেভিগেশন সম্পর্কে আরও জানতে, কম্পোজ দিয়ে নেভিগেট করা দেখুন অথবা জেটপ্যাক কম্পোজ নেভিগেশন কোড ল্যাবটি দেখুন।
{% অক্ষরে অক্ষরে %}আপনার জন্য প্রস্তাবিত
- দ্রষ্টব্য: জাভাস্ক্রিপ্ট বন্ধ থাকলে লিঙ্ক টেক্সট প্রদর্শিত হয়।
- জেটপ্যাক নেভিগেশনকে নেভিগেশন কম্পোজে স্থানান্তর করুন
- কম্পোজের মাধ্যমে নেভিগেশন
- কম্পোজের সাহায্যে স্ক্রিনের মধ্যে নেভিগেট করুন
এই পৃষ্ঠার কন্টেন্ট ও কোডের নমুনাগুলি Content License-এ বর্ণিত লাইসেন্সের অধীনস্থ। Java এবং OpenJDK হল Oracle এবং/অথবা তার অ্যাফিলিয়েট সংস্থার রেজিস্টার্ড ট্রেডমার্ক।
2025-12-09 UTC-তে শেষবার আপডেট করা হয়েছে।