2012-07-20 51 views
0

加入Android的碎片的动态数我哈瓦一个fragment名为DetailFragmentextends Fragment类neccessary Override方法:如何从一个活动

public class DetailFragment extends Fragment{ 
    //Some neccessary methods are over here 
    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
     Bundle savedInstanceState) { 
    // TODO Auto-generated method stub 
    View view = inflater.inflate(R.layout.details, container, false); 
    return view; 
    } 
} 

我哈瓦主要活动:FragmentActivity extends FragmentActivity这集内容:setContentView(R.layout.main);。如果我想从FragmentActivity开始添加DetailFragment,我必须在main.xml布局文件中声明LinearLayout(或任何布局)和android:id="@+id/container_fragment"。有了这样一来,我可以添加一个DetailFragment

FragmentManager fm = getSupportFragmentManager(); 
FragmentTransaction ft = fm.beginTransaction(); 
DetailFragment df = new DetailFragment(); 
ft.add(R.id.container_fragment, df); 
ft.commit(); 

但是,我只能加1 DetailFragmentcontainer_fragment。如果我想在活动中添加2个或更多DetailFragment,我是否必须在main.xml布局中添加2个或更多其他container_fragment?如果不是,我该怎么做,你能举个例子吗?谢谢!

回答

1

该布局可以包含多个片段,您只需在调用FragmentTransaction类的add函数时指定不同的标签。

FragmentManager fm = getSupportFragmentManager(); 
FragmentTransaction ft = fm.beginTransaction(); 
ft.add(R.id.container_fragment, new DetailFragment(), "df_1"); 
ft.add(R.id.container_fragment, new DetailFragment(), "df_2"); 
ft.commit(); 
+0

我会试试!不管怎么说,多谢拉! – 2012-07-20 14:45:57

+0

@Haelty感谢您的帮助。我如何唯一标识这些片段中的编辑文本 – 2017-04-10 05:18:03

相关问题