Android中,既然intent可以传递键值对数据,为什么要把intent和bundle结合起来使用呢?

如题所述,bundle和intent都可以存放键值对数据,对数情况下直接用intent就好了,为什么还有intent+bundle这种搭配呢?

阅读 3.7k
3 个回答

你就算用 intent传 里面也会自动生成一个bundle的。
所以实际上都是用bundle

一楼已经回答的很正确了,我只是贴出个源码来:

    /**
     * Add extended data to the intent.  The name must include a package
     * prefix, for example the app com.android.contacts would use names
     * like "com.android.contacts.ShowAll".
     *
     * @param name The name of the extra data, with package prefix.
     * @param value The String data value.
     *
     * @return Returns the same Intent object, for chaining multiple calls
     * into a single statement.
     *
     * @see #putExtras
     * @see #removeExtra
     * @see #getStringExtra(String)
     */
    public Intent putExtra(String name, String value) {
        if (mExtras == null) {
            mExtras = new Bundle();
        }
        mExtras.putString(name, value);
        return this;
    }

好像是bundle能传递的数据类型多?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题