android 如何在 viewpager 中添加列表视图
How add a listview inside a viewpager in android
我一直在尝试获得一个列表视图,可以通过滑动来更改其项目以显示下一周或前一周的详细信息。这是我的布局文件的样子
'
<android.support.v4.view.ViewPager
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/home_pannels_pager">
<ListView
android:id="@+id/week_list"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</ListView>
</android.support.v4.view.ViewPager>
但是我没有得到我想要的。请你帮助我好吗?提前致谢。
这不是 ViewPager 的工作方式。您将页面送入 ViewPager with a PagerAdapter。您的 ListView 将包含在由 PagerAdapter 创建的 Fragment 中。
布局中:
<android.support.v4.view.ViewPager
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/home_pannels_pager" />
在具有此布局的 FragmentActivity 中:
ViewPager pager = (ViewPager) findViewById(R.id.viewPager);
pager.setAdapter(new PagerAdapter(getSupportFragmentManager()));
简单的 PagerAdapter 示例:
public class PagerAdapter extends FragmentPagerAdapter {
public FrontPageAdapter(FragmentManager Fm) {
super(Fm);
}
@Override
public Fragment getItem(int position) {
Bundle arguments = new Bundle();
arguments.putInt("position", position);
FragmentPage fragment = new FragmentPage();
fragment.setArguments(arguments);
return fragment;
}
@Override
public int getCount() {
// return count of pages
return 3;
}
}
FragmentPage 示例:
public class FragmentPage extends Fragment {
public FragmentPage() {}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_frontpage, container, false);
// probably cast to ViewGroup and find your ListView
Bundle arguments = getArguments();
int position = b.getInt("position");
return view;
}
}
我一直在尝试获得一个列表视图,可以通过滑动来更改其项目以显示下一周或前一周的详细信息。这是我的布局文件的样子 '
<android.support.v4.view.ViewPager
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/home_pannels_pager">
<ListView
android:id="@+id/week_list"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</ListView>
</android.support.v4.view.ViewPager>
但是我没有得到我想要的。请你帮助我好吗?提前致谢。
这不是 ViewPager 的工作方式。您将页面送入 ViewPager with a PagerAdapter。您的 ListView 将包含在由 PagerAdapter 创建的 Fragment 中。
布局中:
<android.support.v4.view.ViewPager
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/home_pannels_pager" />
在具有此布局的 FragmentActivity 中:
ViewPager pager = (ViewPager) findViewById(R.id.viewPager);
pager.setAdapter(new PagerAdapter(getSupportFragmentManager()));
简单的 PagerAdapter 示例:
public class PagerAdapter extends FragmentPagerAdapter {
public FrontPageAdapter(FragmentManager Fm) {
super(Fm);
}
@Override
public Fragment getItem(int position) {
Bundle arguments = new Bundle();
arguments.putInt("position", position);
FragmentPage fragment = new FragmentPage();
fragment.setArguments(arguments);
return fragment;
}
@Override
public int getCount() {
// return count of pages
return 3;
}
}
FragmentPage 示例:
public class FragmentPage extends Fragment {
public FragmentPage() {}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_frontpage, container, false);
// probably cast to ViewGroup and find your ListView
Bundle arguments = getArguments();
int position = b.getInt("position");
return view;
}
}