![](/img/trans.png)
[英]How to navigate from fragment to Activity in Android navigation component?
[英]Unable to navigate to desired fragment using navigation component
我在我的應用程序中使用導航組件。 我試圖通過單擊操作欄圖標導航到片段,但它不起作用。 下面是我的代碼:
action_menu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:title=""
android:id="@+id/cart_notif"
android:icon="@drawable/ic_order"
app:showAsAction="always"
android:actionLayout="@layout/notification_badge"/>
</menu>
nav_host.xml
<fragment
android:id="@+id/cartFragment"
android:name="BottomFragments.CartFragment"
android:label="Cart"
tools:layout="@layout/fragment_cart">
<action
android:id="@+id/action_cartFragment_to_cakeFragment"
app:destination="@id/cakeFragment"
app:enterAnim="@anim/nav_default_enter_anim"
app:popUpTo="@id/cakeFragment"
app:popUpToInclusive="true" />
</fragment>
MainActivity.java
@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
if(item.getItemId() == R.id.cart_notif){
NavController navController = Navigation.findNavController(MainActivity.this,R.id.fragment);
navController.navigate(R.id.cartFragment);
}
return super.onOptionsItemSelected(item);
}
@Override
public boolean onSupportNavigateUp() {
navController.navigateUp();
return super.onSupportNavigateUp();
}
這種方法不起作用 - 我該如何導航?
在這里,我可以看到您正在使用onOptionsItemSelected
從一個屏幕導航到另一個屏幕。 相反,您應該使用onNavigationItemSelected
方法。
有關更多詳細信息,請參閱此答案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.