2 o19830015 o19830015 于 2013.03.11 11:23 提问

Android-用fragment发送bundle

我的代码如下

// 发送包

    String topUser = String.valueOf(scores.get(arg2));

    Bundle data = new Bundle();
    data.putString("userprofile", topUser);

    FragmentTransaction t = getActivity().getSupportFragmentManager()
            .beginTransaction();
    SherlockListFragment mFrag = new ProfileFragment();
    mFrag.setArguments(data);
    t.replace(R.id.main_frag, mFrag);
    t.commit();

// 接收包

    Bundle extras = getActivity().getIntent().getExtras();
    userName = extras.getString("userprofile");

但是数据没有接收。

1个回答

Kakalapa1986
Kakalapa1986   2013.03.11 13:27
已采纳

需要用到fragment类中的getArguments()方法。
举个例子:

Bundle extras = getArguments();

相关说明:

http://developer.android.com/reference/android/app/Fragment.html#getArguments()

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
深入分析:Fragment与Activity交互的几种方式(二,使用Bundle)
首先我们需要在Activity中添加Fragment
Android activity Bundle和fragment数据传递
activity //向观点和课表界面传直播ID Bundle data = new Bundle(); data.putString("liveid",liveid); livePalyerProjectFragment.setArguments(data); livePlayerOpionsFragment.setAr
通过bundle对象实现Fragment之间的传值
这里我们介绍一下使用bundle对象进行Fragment传值,比较简单我们直接看代码吧,都有注释的。 MainActivity: package org.mobiletrain.fragment_demo07; import android.os.Bundle; import android.app.Activity; import android.app.FragmentManager;
Android Fragment之间参数传递通过使用bundle进行参数传递
转自:http://dwtedx.com/itshare_296.html Fragment参数传递方法二 可以使用bundle进行参数传递、这样在两个Fragment跳转的时候就可以带上参数了、同样也可以传递一个复杂的对象 ft.hide(getActivity().getSupportFragmentManager().findFragmentByTag("")); DemoFra
Fragment之间使用Bundle传递对象,数据,序列化,集合
首先将对象序列化 序列化的作用 1)永久性保存对象,保存对象的字节序列到本地文件中; 2)通过序列化对象在网络中传递对象; 3)通过序列化在进程间传递对象。 两种方法序列化. 一是实现Serializable接口(是JavaSE本身就支持的),implement Serializable一下就可以了 一是实现Parcelable接口(是Android特有功能,效率比实现Seri
Fragment与Activity使用Bundle传递数据
这里简单描述了以下Activity使用Bundle向Fragment传递数据
利用Bundle完成Activity向Fragment传值
Activity向Fragment传值也比较简单,把你要传递的值通过put×××传递进Bundle中,然后调用Fragment的setArguments把要传递的Bundle装载进去,这里数据可以是String int,或者是序列化的一个对象值,然后在接收方,调用bundle的get×××得到后,简单解析处理即可,下面我贴上一个传递对象的实例 传递数据的Activity中 Hear
Fragment之间Bundle传值
package com.example.fragment39a; import com.example.fragment39a.BookListFragment.Callbacks; import android.os.Bundle; import android.app.Activity; import android.support.v4.app.FragmentAct
通过intent和bundle来进行Activity和Fragment的数据传递
是这样的,一个登陆的界面Activity传递数据给主Activity,然后主Activity镶嵌了一个Fragment,数据要在Fragment中显示。 Activity A ------>Activity B ------>Fragment Activity A:Intent intent = new Intent(getApplication(), MainActivity.class);
android-关于Handler和Bundle的使用
随便创建一个android项目,项目中使用Fragment,然后以下代码是简述Handler和Bundle的使用 Handler简单来说就是用来多线程开发然后使用方法回调的。可以用来更新UI界面,但是普通的Handler是和主线程用同一个线程的。 如果要另外开一个线程,需要使用: HandlerThread handlerThread = new HandlerThread("h