Android工作室。所以基本上我是MainActivity我有NavigationDrawer,我用它去片段。当我打开这个片段时,我需要它来显示Listview。问题是为了使listview工作我需要扩展到listactivity,但是为了从菜单打开片段我需要扩展到Fragment。怎么办?
继承我的MainActivity导航抽屉
@Override
public boolean onNavigationItemSelected(MenuItem item) {
// Handle navigation view item clicks here.
int id = item.getItemId();
Fragment fragment = null;
if (id == R.id.nav_main) {
// Handle the camera action
fragment = new WebListFragment();
} else if (id == R.id.nav_add) {
// Handle the camera action
fragment = new AddFragment();
} else if (id == R.id.nav_tut) {
}
if (fragment != null) {
FragmentManager fragmentManager = getSupportFragmentManager();
fragmentManager.beginTransaction()
.replace(R.id.frame_container, fragment).commit();
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
这是我的片段
公共类WebListFragment扩展了Fragment {
public WebListFragment() {}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String[] links = {"Facebook", "Twitter", "StackOverflow"};
ArrayAdapter<String> adapter= new ArrayAdapter<String>(getListView().getContext(), android.R.layout.simple_list_item_1, links);
getListView().setAdapter(adapter);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_web_list, container, false);
}
答案 0 :(得分:1)
问题是为了使listview工作,我需要扩展到listactivity
test.c
是一个便利课。您可以使用ListActivity
而不是ListView
。
为了从菜单中打开片段,我需要扩展到Fragment
或者,您可以从本身继承自ListActivity
。
怎么办?
你可以use ListFragment
。或者,您可以使用Fragment
,并像管理任何其他小部件一样管理Fragment
。