<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"> </span><span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">今天工作中使用到了Fragment,导入包时有两个,分别是android.app以及android.support.v4.app,具体的差别请参看这位壮士的博客</span>
http://blog.youkuaiyun.com/a465456465/article/details/10415211
本人使用的时android.app包。
初始化:
if (frame == null){
FragmentManager fragmentManager = getFragmentManager();
fragmentManager.beginTransaction().replace(R.id.frame, new MedicineKindFragment()).commit();
}
还有一种:
<pre name="code" class="html"> FragmentManager fm = getFragmentManager();
FragmentTransaction transaction = fm.beginTransaction();
medicineKindFragment = new MedicineKindFragment();
transaction.replace(R.id.frame, medicineKindFragment);
transaction.commit();
其实都是一样的,就是在activity上设置一个fragment
fragment之间的跳转及信息传递
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction ft = fragmentManager.beginTransaction();
SearchMedFragment searchMedFragment = new SearchMedFragment();
Bundle bundle = new Bundle();
bundle.putString("name", searchName.getText().toString());
searchMedFragment.setArguments(bundle);
ft.replace(R.id.frame, searchMedFragment);
ft.commit();
Bundle的作用就是用来传递数据,与Activity中的putExtra相似
fragment跳转的话我使用replace(),网上相关文章跟论坛说add之后show()跟hide()也可以,但是我不太知道两者的区别,若有人看见请不吝指出