开始新的意图,然后打开一个特定的片段

时间:2019-03-25 14:34:47

标签: android android-fragments android-intent

我要开始意图,然后在单击按钮后自动选择片段。

这是我按钮的功能。

startActivity(new Intent(AlertNotif.this, HomeActivity.class));

在我的HomeActivity.class中,它具有用于不同片段的BottomNav。

   bottom_nav.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
        @Override
        public boolean onNavigationItemSelected(@NonNull MenuItem item) {

            BottomNavigationView bottomNavigationView = (BottomNavigationView)findViewById(R.id.bottom_nav);
            BottomNavigationViewHelper.removeShiftMode(bottomNavigationView);

            switch (item.getItemId()){

                case R.id.nav_map:
                    setFragment(mapFragment);
                    return true;
                case R.id.nav_cctv:
                    setFragment(cctvFragment);
                    return true;

我对HomeActivity的默认片段是mapFragment,我想在单击按钮后将其设置为cctvFragment,而不是默认片段。我还尝试过将HomeActivity.class更改为CctvFragment.class,但是它仍然是默认设置。

1 个答案:

答案 0 :(得分:0)

在要调用HomeActivity的活动的onCreate上使用:

navigation.selectedItemId = R.id.your_id

导航是bottomNavigationView在xml中的布局,而id是导航项的ID!

创建活动后,它所做的只是调用onNavigationItemSelectListener。 使用此代码之前,请记住先设置onNavigationItemSelectListener。

此代码在Kotlin中,希望不是问题