Android FragmentActivity如何向Fragments传递变量?

标签 android sliding android-fragmentactivity fragmentpageradapter

我有一个运行完美的 FragmentActivity,在(相同的)Fragments 之间具有平滑的水平滑动。我现在想知道如何将变量发送到 Fragment 对象?

我的代码如下所示:

    private void initialisePaging() {

    fragments = new Vector<Fragment>();

    for (int i = 0; i < wiList.length; i++) {
        WhiteboardImage tmpWi = wiList[i];

        intent.putExtra("displayNow", tmpWi.getFilename());
        fragments.add(Fragment.instantiate(this, GalleryFragment.class.getName()));
    }

    this.mPagerAdapter = new GalleryPagerAdapter(super.getSupportFragmentManager(), fragments);

    ViewPager pager = (ViewPager) super.findViewById(R.id.viewpager);
    pager.setAdapter(this.mPagerAdapter);

    // Define which item of the list will be displayed
    pager.setCurrentItem(4);
}

所以基本上在 for() 循环中,我多次将 GalleryFragment 对象添加到 PagerAdapter 中。我现在想做的是每个 GalleryFragment 都有一个不同的 ID(或字符串)。我无法弄清楚如何将不同的值传递给该循环中的每个 GalleryFragment 对象。此时每个对象都获得完全相同的值。

感谢您的帮助。

最佳答案

我通常是这样做的: 如果数据从一开始就可用并且没有改变,那么我将它们解析为fragment.instantiate的参数。然后在此函数中,您可以将它们作为带有 .putArguments(...) 的 bundle 放入您的 fragment 中。在 fragment 的 onCreate 中,您可以使用 .getArguments(...) 检索数据

关于Android FragmentActivity如何向Fragments传递变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9340057/

相关文章:

android - AlertDialog 改变正面按钮颜色

android - 在 Android 应用程序上添加大量的 Firebase ValueEventListener 可以吗?

jQuery - 当滑动面板显示时绝对定位的 div 的动画 'left' 位置

java - 如何处理 Android 按钮 OncClick fragment

java - Fragment 和 BroadcastReceiver 在几秒钟后卡住应用程序

Android:带有中间组件的布局展开

android - 没有网络连接时应用崩溃

javascript - jQuery同时从左滑动文本到中心/从中心到右滑动文本

javascript - 计算滑动平均值

android - 如何创建应用程序不活动时永不停止的前台服务