fragment-backstack

    0热度

    1回答

    我是非常新的android和尝试将我的iphone应用程序转换为android。我尝试在片段之间进行nevigate,并且在从片段A导航到B之后,我想用后退按钮从片段B返回到A.我做了一个研究,但不明白。下面的代码中,我有一个导航抽屉,可以在片段之间导航。点击关注者后,我想用返回按钮返回新闻提要。 //this is the navigation drawer part if (id == R

    4热度

    3回答

    我有两个片段FragmentHome和FragmentAbout,我已经加入NavigationDrawer到App当我点击Home它打开FragmentHome和About打开FragmentAbout,当我打开FragmentAbout我也将它添加到堆栈中。这工作正常。 现在的问题是,当我点击About,按后退按钮它去FragmentHome但NavigationDrawer仍显示About为

    0热度

    1回答

    我完全是Android新手。我很惊讶Android Studio没有用于片段之间导航的模板。我已经花了几天时间,但仍然无法让我的代码正常工作。 我有单个活动和两个片段 - MainFragment和AboutFragment。关于可通过抽屉菜单项访问。我想通过按回操作栏按钮返回到MainFragment。问题是按钮不起作用。谁能帮我? 完全最小的Android Studio项目: test.zip

    1热度

    3回答

    在堆栈中有A-> B-> c,A位于顶部。 当时它希望C在顶部,并保持A,B在堆栈中的顺序。在要求中,堆栈中不能有两个C实例。问题是如果弹出C,那么所有A,B都被删除。 现在想要的是C-> A-> B。 是否有可能通过FragmentManager的API实现这一点?

    2热度

    3回答

    我试图在使用片段时实现后端堆栈,但是当使用“后退”按钮时,我一直在将应用程序移出主屏幕。 活动打开片段A;片段A有一个可点击的TextView打开片段B(这是可行的)。点击BACK应该会将我返回到片段A,但它会将我带到主屏幕。 这里是活动的号召,片段A的onCreate开口道: FragmentManager fragmentManager = getFragmentManager();

    12热度

    7回答

    我在我的项目中使用了多个片段。我想要保存片段的状态并在我回到此状态时恢复此状态。在这个片段中,我显示了多个图片,这些图片在点击按钮时发生变化我用下面的代码是: String backStateName = fragment.getClass().getName(); FragmentManager fragmentManager = getSupportFragmentManager(); b

    2热度

    1回答

    我有一些碎片将被以下方法替换。我认为我的代码有问题,因为我想阻止将多个片段添加到后端堆栈中。如果我点击片段B两次,所有实例将被添加到后退栈中,并且按下后退按钮将通过两个创建的实例。 public void replaceFragment(Fragment fragment, boolean addToBackStack, boolean customAnimation) { Fragme

    4热度

    1回答

    我使用fragmentTransaction通过片段来进行,它看起来像这样: FragmentManager fm = oldFragment.getFragmentManager(); FragmentTransaction fragmentTransaction = fm.beginTransaction(); fragmentTransaction.add(oldF

    0热度

    1回答

    我有2个片段,第一个包含一个按钮,点击打开一个片段,其中有一个ListView。我有一个共享元素转换为按钮过渡到新的片段(根布局),但我也想反过来这个过渡(列表片段收缩到按钮再次)。 但是,目前我检测到列表项目单击并发送一个事件到活动,从列表中弹出列表视图片段(popBackStackImmediate()),因此不显示过渡。 有没有一种很好的方法来允许后退导航,同时保留反向转换以及工作?

    5热度

    1回答

    我有两个片段甲& B. 我已切换从A使用以下代码来B: FragmentManager fragmentManager; FragmentTransaction transaction; fragmentManager = getActivity().getFragmentManager(); transaction = fragmentManager.beginTr