如何在服务中访问FragmentManager?

Dam*_*ian 6 java user-interface android android-service android-fragments

我正在创建类似Facebook Chat Heads的东西,我需要访问服务中的FragmentManager.很多人会说我做不到,但总有办法,所以我问你们,我怎样才能从服务中访问FragmentManager?

在我的服务中,onCreate方法我有:

LayoutInflater inflater = LayoutInflater.from(this);
layout = inflater.inflate(R.layout.box, null);
ViewPager pager = (ViewPager) layout.findViewById(R.id.pager);

FragmentManager fm = [HOW CAN I ACCESS THIS?];

pager.setAdapter(new MyPagerAdapter(fm));
Run Code Online (Sandbox Code Playgroud)

Com*_*are 3

我需要访问 Service 中的 FragmentManager

这不仅不可能,而且您也不需要它。Android 中没有什么是只能通过片段来完成的。

例如,您似乎正在使用ViewPager. 您不需要将片段与ViewPager. 事实上,aViewPager本身与fragment无关。两个具体PagerAdapter实现(FragmentPagerAdapterFragmentStatePagerAdapter)恰好使用了片段。但是完全有可能创建PagerAdapter您自己的不使用片段的实现。而且,与将PagerAdapter与活动生命周期密不可分地联系在一起的 aViews塞进.FragmentManagerService