问题标签 [fragmentmanager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 来自应用程序上下文的 FragmentManager
有没有办法从应用程序上下文中获取 FragmentManager?我想使用 ImageLoader 或 BitmapFun 来存储我从服务器下载的一些位图。这两个类都需要一个 FragmentManager 用于在配置更改(例如方向更改)时保留缓存。就我而言,我想在我真正“需要”它们之前预先下载图像。
android - FragmentManager 替换片段而不为旧片段调用 onPause() onDestroy()
在我的应用程序中,我有一个左侧菜单,用于Fragment
控制. 上面我有在新 GMAIL 中使用的新组件只在一个中被刷新。FragmentView
MainActivity
FragmentView
PullToRefresh
Fragment
如果我Fragment
用另一个替换它,我想停止刷新它。
我希望FragmentManager
坚持传统的FragmentLifeCycle之后,我决定停止在、或方法中的PullToRefresh
组件。不幸的是,这些方法从未被调用来替换. 只有当我从左侧菜单中选择了相同的片段时,它们才会被替换。onPause
onDestroy
onStop
onDetach()
Fragment
这意味着,FragmentManager
除非我试图用来自同一类型的另一个片段替换片段,否则它正在缓存片段并且不会破坏它们。
我的问题是,如果在另一个片段上替换或添加新片段,片段生命周期是什么FragmentManager
?
如果我想在用另一个片段替换片段时停止它,我应该在哪里停止我的 PullToRerfesh 组件?
android - 没有支持库的 BetterPickers
我正在使用https://github.com/derekbrameyer/android-betterpickers为我的应用程序使用时间和日期选择器。但是,我的应用程序不需要支持库,似乎在将 FragmentManager 设置为 Time- 和 DatePickerBuilder 时我需要 SupportFragmentManager :/ 有没有办法避免支持库?
android - android.support.v4.app.FragmentManager 还是 android.app.FragmentManager?
我正在学习Android开发。我被困在应该很容易的事情上。
我正在创建一个具有一个 Activity、2 个片段和 1 个界面的应用程序。
因此,在主要活动中,我尝试使用管理器创建对片段 B 的引用。我被困在这里,因为 Eclispse 告诉我要改变一些事情(见下文):
我的意图:`
如果我这样做,我会收到错误消息并需要执行一些更改。更改后的代码如下所示(我仍然无法到达 FragmentB):
有关更多详细信息,我还将在此处放置 Activity 的导入标头:
我在这里想念什么?整个 support.v4 /support.v7 对新手来说有点混乱。
编辑:更改为:
并扩展 FragmentActivity 我仍然无法创建对 FragmentB 的引用:
}
根据要求,我发布了 FragmentB 代码:
主要 XML
android - 使用片段管理器添加/删除片段时保存/恢复片段的状态
我有一个包含几个片段的活动,这些片段是动态添加和删除的。我注意到每次添加一个片段时fragmentManager.beginTransaction().add(containerViewId, fragment, tag).commit()
,片段的方法中收到的 BundleonCreateView(LayoutInflater, ViewGroup, Bundle)
是null
,并且在调用时fragmentManager.beginTrasaction().remove(fragment).commit()
,没有调用 frament 的方法 `onSaveInstanceState(Bunlde)。
那么有没有办法在使用片段管理器添加/删除片段时让片段保存/恢复其状态?
如果片段被保留,那么Bundle
inonCreateView
总是null
。
android - IllegalStateException Activity 已被销毁 - 三重嵌套片段
我有一个Fragment
,我们称它为...F1
包含一个Fragment
F2
; 其中又包含一个Fragment
F3
.
当我启动我的应用程序时,我收到此错误:
它指的是这行代码:
我的小学上层fragmentcontainer
里的a在哪里。放在's内的位置。FrameLayout
Fragment
F1
F2
F1
fragmentcontainer
关于如何解决这个问题的任何想法;我尝试进行搜索,其他结果说要硬编码一个Fragment
字段并立即分配它,但这也没有解决问题。
android - 改变片段动态
我有 2 个问题。首先,我可以说某人,为什么这不起作用?我只是试图改变片段,但他什么也没做。我只看到第一个片段。
主要活动:
main.xml 中这样的片段:
片段类只有这个:
Fragment 看起来像这样:
我不知道,为什么他不改变片段。检查一下,switchFragment 真正调用的是真的。
第二个问题是:这是改变碎片的好方法吗?什么是,如果我有 10 个片段?
谢谢你的帮助!:)
android - 更改片段破坏我的布局
有人可以帮我解决以下问题:我只是希望,当我单击一个按钮时,中间的片段会发生变化:
但是,如果我单击一个,则会发生这种情况:
有谁知道,有什么问题吗?
我的片段只是简单的 LineaLayouts,里面有一个文本字段。我的 Main.xml 看起来像这样:
要更改片段,我使用此调用:
非常感谢!!
android - 在片段中按回时列表视图重新加载
我有片段 XYZFragment,我在其中显示列表视图。在 Listview 项目上单击我像这样替换片段。
但我的问题是当我单击返回按钮时,片段会重新加载列表视图。当我使用 Activity 时,它永远不会发生。所以我的问题是如何保存前一个片段的实例,以防止重新加载数据。
android - FragmentManager popBackStack 不删除片段
我正在使用 Fragments 实现菜单导航。所以我从主页开始,然后用户可以导航到不同的部分和每个部分的详细信息。
当用户更改部分时,我在 fragmentmanager backstack 上调用 pop 直到我到达 Home,然后加载新部分。
这一切都按预期工作。但我遇到了这个问题:
- 在 onResume() 上加载调用 setHasOptionsMenu(true) 的部分
- 加载另一个部分(它应该从堆栈中取出的旧部分)。我看还行。没有显示菜单
- 离开应用程序(例如,转到 Android Laucher 活动),然后当我返回时,我看到了正确的部分,但它显示的是旧片段的菜单。
我已经迭代了 backstack 并打印了每个片段,它不是带有菜单的片段。
我在 onResume() 方法(标记的地方)上放了一个调试标记setHasOptionsMenu(true)
,它确实进入了这里,所以 Fragment 它仍然在某个地方。
我想知道我是否做错了什么以及如何解决它,谢谢
更新:
我正在使用此代码加载新片段
并删除:
注意 1:我使用 add 而不是 replace 因为我不想在从详细信息部分返回时丢失片段的状态。当我加载另一个不同的部分时,我调用 clearStack 将堆栈弹出到 1,然后加载新片段。最后,我调用 executePendingTransactions() 来完成从事务中删除片段。
注意 2:我看到它正在进入我的片段 onDestroy() 方法,因此它应该被销毁。但我不知道为什么在 Main 活动恢复时它会再次被调用。