Android 是否可以同时从另一个活动调用活动和片段
我想在fragment上设置一个默认的框架布局,这个框架布局显示在半个布局的顶部,剩余的一半包含列表视图。单击列表项时,框架布局会更新布局项。这些都可以正常工作。但是,当我要设置默认框架布局时,如果来自上一个活动,则会产生问题。下面是我如何打开片段,这是此活动中的适配器类。我想在下一个包含列表的活动上设置默认的框架布局Android 是否可以同时从另一个活动调用活动和片段,android,android-fragments,android-framelayout,Android,Android Fragments,Android Framelayout,我想在fragment上设置一个默认的框架布局,这个框架布局显示在半个布局的顶部,剩余的一半包含列表视图。单击列表项时,框架布局会更新布局项。这些都可以正常工作。但是,当我要设置默认框架布局时,如果来自上一个活动,则会产生问题。下面是我如何打开片段,这是此活动中的适配器类。我想在下一个包含列表的活动上设置默认的框架布局 grid.setOnClickListener(new OnClickListener() { @Override public void onClick
grid.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// Get the position
resultp = data.get(position);
frame=(FrameLayout)grid.findViewById(R.id.fragment_container);
Intent intent = new Intent(context, SingleItemView.class);
intent.putExtra("id", resultp.get(MainActivity.RANK));
intent.putExtra("count", resultp.get(MainActivity.COUNTRY));
intent.putExtra("population",resultp.get(MainActivity.POPULATION));
intent.putExtra("flag", resultp.get(MainActivity.FLAG));
// Start SingleItemView Class
intent.putExtra("mylist", data);
context.startActivity(intent);
if(frame==null){
DefaultLogFrag fragment1 = new DefaultLogFrag();
FragmentManager fragmentManager1 = ((Activity) context).getFragmentManager();
FragmentTransaction fragmentTransaction1 = fragmentManager1.beginTransaction();
fragmentTransaction1.add(R.id.fragment_container, fragment1);
fragmentTransaction1.commit();
}
}
});
只需使用打开下一个活动 Intent Intent=newintentContext,SingleItemView.class 并将片段事务添加到SingleItemView.java活动的onCreate中 如果您希望根据某些条件添加不同的片段,则可以使用intent variable EXTRACT传递条件变量:
intent.putExtra("whichFragment", /* integer parameter */ 4);
在SingleItemView.java的onCreate中处理它们:
您应该在SingleItemView活动的onCreate方法中添加片段
switch(getIntent().getExtraString("whichFragment")) {
case 1: /* add Fragment 1 */
break;
case 2: /* add Fragment 2 */
break;
case 3: /* add Fragment 3 */
break;
case 4: /* add Fragment 4 */
break;
}