Android 在ViewPager中而不是在XML中以编程方式创建按钮
我希望在ViewPager中的视图上有左右按钮。但在第一个视图中,我只需要一个右按钮,在最后一个视图中,我只需要一个左按钮。如何利用ViewPager和PagerAdapter以编程方式创建按钮 似乎我无法在PagerAdapter的实例化项中执行此操作,这很糟糕,因为我只能在PagerAdapter代码中使用“position”参数 这是在我的onCreate中,其中rl在活动中全局声明:Android 在ViewPager中而不是在XML中以编程方式创建按钮,android,android-viewpager,Android,Android Viewpager,我希望在ViewPager中的视图上有左右按钮。但在第一个视图中,我只需要一个右按钮,在最后一个视图中,我只需要一个左按钮。如何利用ViewPager和PagerAdapter以编程方式创建按钮 似乎我无法在PagerAdapter的实例化项中执行此操作,这很糟糕,因为我只能在PagerAdapter代码中使用“position”参数 这是在我的onCreate中,其中rl在活动中全局声明: Button btnLeftClick = new Button(this); btnLeftClick
Button btnLeftClick = new Button(this);
btnLeftClick.setText("<<");
btnLeftClick.setLayoutParams(new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT));
Button btnRightClick = new Button(this);
btnRightClick.setText(">>");
btnRightClick.setLayoutParams(new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT));
rl = (RelativeLayout) View.inflate(this, R.layout.view1, null);
这是我在PagerAdapter中尝试做的,但我得到了NullPointerException:
if (position == numViews) {
rl.addView(btnLeftClick);
}
如果我改为在onCreate中添加视图而不使用If语句,则不会得到NullPointerException
有解决办法吗
谢谢。检查rl是否为空。btnLeftClick似乎还不错。我从这个来源找到了答案:答案就在这里:
我的问题是,为了使用
findviewbyd
,我必须先参考按钮所在的布局 哦,我明白了,是的,它是空的。您知道我是否可以实例化和使用适配器中的按钮吗?