这是我的设置。
活动A1托管的片段F1。
活动A2托管的片段F2。
F1通过startActivity()调用A2并传递一个额外的(这是F2中存在的静态成员变量(类似于结构的键)。)
如果intent extra通过startActivity()直接转到F2的静态成员变量,那么为什么我们必须使用getActivity().getIntent().get___extra()
来获取额外的意图呢?
示例:
F1(ListFragment.class)
A1(ListActivity.class)
F2(DetailFragment.class)。这个静态成员KEY是一个字符串。
A2(DetailActivity.class)
序列:
// In ListFragment.class
Intent i = new Intent(getActivity(),DetailActivity.class)
i.putExtra(F2.KEY,'xxx');
i.startActivity();
//In DetailFragment.class
String s = getActivity().getIntent.getStringExtra(KEY); --Statement 1
而不是语句1,为什么我不能直接访问KEY数据,因为我认为startActivity()会将数据放在这个静态成员中。这个假设不对吗?