我在实现自定义PagerAdapter时遇到问题,并将其与ViewPager一起使用.此示例PagerAdapter有10个项目,每个项目都是一个按钮,其索引为文本.当我运行程序时,我看到一个文本"1"的按钮为"0".当我刷到其他项目时,我只得到空白视图.当我向后滑动时有时会看到一个带有一些数字的按钮,但它会消失(可能它正在破坏并将其从容器中移除),有时我会看到一个带有数字的按钮,但数字在刷卡后会发生变化(我认为我创建了一个新的Button,然后将其添加到容器中,由于某些原因,viewpager显示了这个新按钮.
我该如何解决这个实现?我没有看到例子中的差异.
我的PagerAdapter实现:
public class MyPagerAdapter extends PagerAdapter {
@Override
public int getCount() {
return 10;
}
@Override
public boolean isViewFromObject(View view, Object o) {
return o.getClass()==view.getClass();
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
Button button = new Button(container.getContext());
ViewGroup.LayoutParams params = new ActionBar.LayoutParams(-1,-1);
button.setLayoutParams(params);
button.setText(String.valueOf(position));
container.addView(button);
return button;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((Button)object);
}
}
Run Code Online (Sandbox Code Playgroud)
我的活动:
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); …
Run Code Online (Sandbox Code Playgroud)