12得票6回答
Android碎片 - 如何从一个视图移动到另一个视图?

我可以先将一个 Fragment 添加到一个 View 中,然后将其“分离(detach)”,再将其“重新附加(re-attach)”到另一个 View 中吗? 在代码中,我想要实现以下功能: fragOne one = new fragOne(); getSupportFragmentM...

7得票1回答
Android Lint 提示我可以用 <merge> 标签替换布局,但在片段事务中我需要布局的 id

我在安卓应用程序中使用了选项卡界面,并将FrameLayout作为主要布局。但是我收到了一个安卓Lint警告,上面写着: This &lt;FrameLayout&gt; can be replaced with a &lt;merge\&gt; tag 我只在onTabSelected...

20得票2回答
Fragment isAdded()在已添加的Fragment上返回false

我有这个很不错的函数:private void addMapFragment(){ if(!mapFragment.isAdded()){ FragmentTransaction ft = getFragmentManager().beginTransaction();...

14得票5回答
空指针异常: FragmentManager.beginTransaction()

我在试图从第一个 Fragment 启动另一个 Fragment 时遇到了这个错误:java.lang.NullPointerException: Attempt to invoke virtual method 'android.app.FragmentTransaction android...

8得票1回答
当父活动的状态将被保存时,您如何处理片段事务?

我的应用有几个片段和活动。在主父活动的生命周期内,应用会在其他活动中向用户呈现信息/选项。 关于片段的文档对commit()有以下规定: 警告:只能在活动保存其状态之前(当用户离开活动时)使用commit()提交事务。如果您尝试在此之后提交,将引发异常。这是因为提交后的状态可能会丢失,如果...

16得票1回答
替换碎片时高度值错误。

大家好,我又来问关于Fragment的问题了(我正在使用android.app.Fragment而不是Support Fragments)。 我想要替换一个Fragment。但这并不像使用以下代码那么简单: fragmentTransaction .replace(containe...

79得票2回答
新的FragmentTransaction commitNow()方法在内部是如何工作的?

Android N和支持库版本24中新增的commitNow()方法文档有限且有些令人困惑。 同步提交此事务。在此调用返回之前,任何添加的片段都将被初始化并完全带到其宿主的生命周期状态,并且任何删除的片段都将相应地被拆除。以这种方式提交事务允许将片段添加为专用的封装组件,以监视其宿主的生命周...

46得票7回答
抽屉式布局中的项目点击 - 何时更换碎片才是正确的时间?

我正在开发一个应用程序,使用导航抽屉模式(带有DrawerLayout)。 每次点击抽屉的项目,都会替换主容器中的片段。 然而,我不确定何时是正确的时间进行片段事务? 当抽屉开始关闭时?还是在关闭后? 在谷歌的 documentaion example 中,您可以看到他们在项目点击后立即...

8得票2回答
将Android片段移动到另一个容器中 无法更改片段的容器ID

我希望我的应用程序在平板电脑上能够实现以下功能。片段(0)有一些菜单,将显示片段(1)…(n)的内容,如下所示: ----------------- | | | | | | | | | | |(0)| X | X | X | | | | | |...

10得票2回答
FragmentTransaction:replace和addToBackStack不能同时使用,该怎么办?

我对Android开发还比较新,现在遇到了一些奇怪的问题。 我有一个空的FrameLayout作为碎片的容器。 如果用户第一次按按钮,就生成新的碎片并放置在容器中。 如果用户后来再次按按钮,并且容器内已经存在碎片,则用新生成的碎片替换现有的碎片。 如果用户按返回按钮,则弹出容器内的碎片。 ...