动态添加和删除视图到viewpager
在我的应用程序中,用户将从他的数据的单个视图开始。我想添加一个ViewPager,并允许用户根据需要添加更多视图。我该怎么做呢?(我不想使用FragmentPagerAdapter。)
我已经阅读了无数的帖子和概述,但我仍然遗漏了一些东西。这是我认为我理解的:
MainActivity创建一个ViewPager和PagerAdapter:
ViewPager pager = null;MainPagerAdapter adapter = null;public void onCreate (Bundle savedInstanceState){
super.onCreate (savedInstanceState);
pager = new ViewPager (this);
setContentView (pager);
adapter = new MainPagerAdapter();
pager.setAdapter (adapter);
View v0 = code_to_create_initial_view();
adapter.add (v0, 0); }使用PagerAdapter提供视图集。为此,我似乎需要添加和删除视图的方法,就像这样; 显然需要更多的东西来告诉ViewPager的内容已经改变以及如何显示更改:
class MainPagerAdapter extends PagerAdapter{
// This holds all the currently displayable views, in order from left to right.
private ArrayList<View> views = new ArrayList<View>();
public void addView (View v, int position)
{
views.add (position, v);
}
public void removeView (int position)
{
views.remove (position);
}}另外,我需要实现以下的虚拟方法。我迷失在这里 - 什么叫他们以及他们应该做什么(好吧,getCount很明显)?
public object instantiateItem (ViewGroup pager, int position); public void destroyItem (ViewGroup, int, Object); public int getCount (); public boolean isViewFromObject (View, Object);
什么是ViewGroup参数 - 是不是ViewPager本身的包含组?
isViewFromObject做了什么 - 对象如何首先与视图关联?
添加或删除视图时,我应该调用startUpdate和finishUdate吗?
谢谢。
MMMHUHU
MYYA
随时随地看视频慕课网APP
相关分类