晚上好人,我正在创建一个聊天应用程序,我正在插入一个Fragment适配器,为其Main类添加清晰的标签,但我需要我的标签在每个标签中都有listview,所以我需要它们来扩展listview和Fragment in为了正常这样做,我需要有经验的家伙的帮助,如果你知道任何技巧或方式,我可以这样做,我真的很感激。 顺便说一句,这是我的适配器:
public class TabsPagerAdapter extends FragmentPagerAdapter {
public TabsPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int index) {
switch (index) {
case 0:
// Top Rated fragment activity
return new TopRatedFragment();
case 1:
// Games fragment activity
return new GamesFragment();
case 2:
// Movies fragment activity
return new MoviesFragment();
}
return null;
}
这是我主要活动的一部分
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_settings:
Intent intent = new Intent(this, SettingsActivity.class);
startActivity(intent);
break;
case R.id.menu_all:
tours = datasource.findAll();
refreshDisplay();
break;
case R.id.menu_cheap:
tours = datasource.findFiltered("price <= 300", "price ASC");
refreshDisplay();
break;
case R.id.menu_fancy:
tours = datasource.findFiltered("price >= 1000", "price DESC");
refreshDisplay();
break;
default:
break;
}
return super.onOptionsItemSelected(item);
}
感谢
答案 0 :(得分:1)
您可以扩展ListFragment而不是Fragment。这将帮助您使用列表构建片段。
您可以查看以下文档ListFragment official documentation
所以你需要做类似的事情:
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.app.ListFragment;
public class MyListFragment extends ListFragment {
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
String[] values = new String[] { "Android", "iPhone", "WindowsMobile",
"Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X",
"Linux", "OS/2" };
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_1, values);
setListAdapter(adapter);
}
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
// do something with the data
}
}