Use a single host activity with a `NavHostFragment`, define the destination argument in the XML graph, and enable the Navigation Safe Args plugin. ```xml <fragment android:id="@+id/productListFragment" android:name="com.example.ProductListFragment"> <action android:id="@+id/action_productListFragment_to_productDetailFragment" app:destination="@id/productDetailFragment" /> </fragment> <fragment android:id="@+id/productDetailFragment" android:name="com.example.ProductDetailFragment"> <argument ...
Scanned 9/5/2026
Install to Claude Code
npx -y skills add HoangNguyen0403/agent-skills-standard --skill android-legacy-navigation --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Android Legacy Navigation?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/hoangnguyen0403-android-legacy-navigation-agent-skills-standard)More formats (shields.io, HTML) on the badges page.
# Pass a product ID with Safe Args
Use a single host activity with a `NavHostFragment`, define the destination argument in the XML graph, and enable the Navigation Safe Args plugin.
```xml
<fragment
android:id="@+id/productListFragment"
android:name="com.example.ProductListFragment">
<action
android:id="@+id/action_productListFragment_to_productDetailFragment"
app:destination="@id/productDetailFragment" />
</fragment>
<fragment
android:id="@+id/productDetailFragment"
android:name="com.example.ProductDetailFragment">
<argument
android:name="productId"
app:argType="string" />
</fragment>
```
In the list fragment, navigate with the generated `Directions` class:
```kotlin
val directions = ProductListFragmentDirections
.actionProductListFragmentToProductDetailFragment(product.id)
findNavController().navigate(directions)
```
Read it in the detail fragment with the generated arguments class:
```kotlin
private val args: ProductDetailFragmentArgs by navArgs()
// args.productId
```
Use `Long` instead of `String` if that is the product ID type. Do not put the ID in a raw `Bundle` key; Safe Args validates the type and generates the navigation contract.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!