Android NavController: 从主活动外部的默认导航图导航到一个片段
创始人
2024-08-14 19:00:26
0

要从主活动外部的默认导航图导航到一个片段,你可以使用NavController的navigate()方法。以下是一个示例代码:

首先,在主活动中,你需要设置默认导航图,并获取NavController:

// MainActivity.java

import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
import androidx.navigation.NavController;
import androidx.navigation.Navigation;
import androidx.navigation.fragment.NavHostFragment;

public class MainActivity extends AppCompatActivity {

    private NavController navController;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // 获取NavHostFragment并获取NavController
        NavHostFragment navHostFragment = (NavHostFragment) getSupportFragmentManager()
                .findFragmentById(R.id.nav_host_fragment);
        navController = navHostFragment.getNavController();
    }

    public NavController getNavController() {
        return navController;
    }
}

然后,在外部的某个地方,你可以获取MainActivity的NavController,并使用它导航到目标片段:

// ExternalClass.java

import android.view.View;
import androidx.navigation.NavController;

public class ExternalClass {

    public void navigateToFragment(View view) {
        MainActivity mainActivity = (MainActivity) view.getContext();
        NavController navController = mainActivity.getNavController();
        navController.navigate(R.id.fragment_destination);
    }
}

在上述代码中,我们通过获取MainActivity的实例来获取NavController,然后使用NavController的navigate()方法导航到目标片段。请确保在导航之前正确设置了默认导航图,并在目标片段中设置了相应的目标ID(R.id.fragment_destination)。

希望这可以帮助到你!

相关内容

热门资讯

重大通报!皇豪互众插件,樱花之... 重大通报!皇豪互众插件,樱花之盛辅助器,可靠技巧(新版有挂);樱花之盛辅助器软件透明挂更新新赛季,主...
终于知道!闽游十三水辅助,新超... 终于知道!闽游十三水辅助,新超凡大厅可以开挂,2025版教程(有挂秘籍);详细新超凡大厅可以开挂攻略...
技巧知识分享!悠闲卡五星辅助,... 您好:悠闲卡五星辅助这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特...
9分钟了解!永久免费脚本辅助工... 9分钟了解!永久免费脚本辅助工具,兴动平台辅助下载,可靠技巧(有挂解密)是一款可以让一直输的玩家,快...
2分钟细说!互游辅助518,人... 您好,人海大厅辅助插件这款游戏可以开挂的,确实是有挂的,需要了解加微【485275054】很多玩家在...
实测分享!中至上饶打炸辅助器开... 实测分享!中至上饶打炸辅助器开挂,逍遥辅助器卡五星,规律教程(有挂规律);最新版2026是一款经典耐...
一分钟秒懂!新二号辅助软件多少... 一分钟秒懂!新二号辅助软件多少钱,新荣耀房卡辅助,扑克教程(有挂方式);新二号辅助软件多少钱AI智能...
玩家必看科普!微乐家乡破解,微... 您好:微信雀神小程序插件这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的...
玩家攻略!樱花之盛辅助软件,悠... 玩家攻略!樱花之盛辅助软件,悠悠互娱辅助,详细教程(有挂技巧);樱花之盛辅助软件软件透明挂作为一款樱...
重大通报!hhpoker挂免费... 重大通报!hhpoker挂免费辅助器,台州哈狗有辅助软件,系统教程(有挂详情);台州哈狗有辅助软件免...