当我从片段 A 部分导航时,有没有办法在片段 B 中启动方法?

Is there a way to start a method in fragment B when i partialy navigated from fragment A?

我有 2 个片段(选项卡片段),A 和 B。有没有办法检测我何时从 A 部分滑动到 B 以在 B 中启动异步任务?我想更新片段 B,类似于 Facebook android 应用程序正在做的事情(你有片段 A,当你开始滑动到片段 B 时,你会看到它正在更新。如果片段不可能,我的其他选择是什么?非常感谢!

我假设您使用的是 ViewPager 作为选项卡片段布局。您正在寻找的方法在 viewPager.OnPageChangedListener 中。 这是参考: ViewPager.OnPageChangeListener

我举个例子:

myViewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
                                            @Override
                                            public void onPageScrolled(int i, float v, int i2) {
                                                Log.d("onPageScrolled","position: " + i + "-posOffset: " + v + "-pixOffset " + i2);
                                            }

                                            @Override
                                            public void onPageSelected(int i) {

                                            }

                                            @Override
                                            public void onPageScrollStateChanged(int i) {
                                                Log.d("onPageScrollState","changed");
                                            }
                                        });

特别是,在页面滚动期间多次调用 onPageScrolled 方法(您应该验证您的异步任务只调用一次,参数 v 和 i2)