
以下是我的代码的一部分:
Fragment fragment = null; switch (position) { case 0: fragment = new HomeFragment(); break; case 1: fragment = new FindPeopleFragment(); break; case 2: fragment = new PhotosFragment(); break; case 3: fragment = new CommunityFragment(); break; case 4: fragment = new PagesFragment(); break; case 5: fragment = new WhatsHotFragment(); break; default: break; } if (fragment != null) { FragmentManager fragmentManager = getFragmentManager(); fragmentManager.beginTransaction() .replace(R.ID.frame_container, fragment).commit(); // update selected item and Title, then close the drawer mDrawerList.setItemChecked(position, true); mDrawerList.setSelection(position); setTitle(navMenuTitles[position]); mDrawerLayout.closeDrawer(mDrawerList); } else { // error in creating fragment Log.e("MainActivity", "Error in creating fragment"); }如何制作HomeFragment列表视图或选项卡小部件.
import androID.app.Fragment;import androID.os.Bundle;import androID.vIEw.LayoutInflater;import androID.vIEw.VIEw;import androID.vIEw.VIEwGroup;public class HomeFragment extends Fragment { public HomeFragment(){} @OverrIDe public VIEw onCreateVIEw(LayoutInflater inflater, VIEwGroup container, Bundle savedInstanceState) { VIEw rootVIEw = inflater.inflate(R.layout.tabs_scroll, container, false); return rootVIEw; }}如果我应该扩展Listfragment,行:
fragmentManager.beginTransaction() .replace(R.ID.frame_container, fragment).commit();标记错误:“FragmentTransaction类型中的方法replace(int,Fragment)不适用于参数(int,HomeFragment)”
请问,我如何使这项工作,我如何仍然添加一个标签小部件,假设我不想使它成为ListvIEw
解决方法:
试试这个..
你不能这样做Fragment fragment = new HomeFragment();如果你这样做你将得到无法将HomeFragment转换为Fragment,因为HomeFragment是片段类,所以你不能将它分配到片段中.所以,你必须喜欢HomeFragment fragment = new HomeFragment();例如,从您的代码.
switch (position) { case 0: HomeFragment fragment = new HomeFragment(); if (fragment != null) { FragmentManager fragmentManager = getSupportFragmentManager(); fragmentManager.beginTransaction() .replace(R.ID.frame_container, fragment).commit(); // update selected item and Title, then close the drawer mDrawerList.setItemChecked(position, true); mDrawerList.setSelection(position); setTitle(navMenuTitles[position]); mDrawerLayout.closeDrawer(mDrawerList); } else { // error in creating fragment Log.e("MainActivity", "Error in creating fragment"); } break; // do like this for remaining cases default: break; } 总结 以上是内存溢出为你收集整理的java – Fragment中的ListView和Tabwidget全部内容,希望文章能够帮你解决java – Fragment中的ListView和Tabwidget所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)