Android怎么停止ViewPager滑动功能但是保持Button引导功能

代码:FragmentPagerAdaptermadapter=newFragmentPagerAdapter(this.getSupportFragmentManage... 代码:
FragmentPagerAdapter madapter = new FragmentPagerAdapter(this.getSupportFragmentManager()){
@Override
public Fragment getItem(int arg0) {
// TODO 自动生成的方法存根
if(arg0==0)
return new Activity_Main_Page1();
else if(arg0==1)
return new Activity_Main_Page2();
else if(arg0==2)
return new Activity_Main_Page3();
else if(arg0==3)
return new Activity_Main_Page4();
else
return null;
}
@Override
public int getCount() {
// TODO 自动生成的方法存根
return 4;
}
展开
 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励20(财富值+成长值)
百度网友455f0f8
2014-12-19 · TA获得超过142个赞
知道小有建树答主
回答量:174
采纳率:0%
帮助的人:96.5万
展开全部

重写ViewPager;

public class CanotSlidingViewpager extends ViewPager {

public CanotSlidingViewpager(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
}

public CanotSlidingViewpager(Context context) {

super(context);
}

private boolean isCanScroll = false;

@Override
public boolean onTouchEvent(MotionEvent ev) {
if (isCanScroll) {
return super.onTouchEvent(ev);
} else {
return false;
}

}

@Override
public boolean onInterceptTouchEvent(MotionEvent arg0) {
// TODO Auto-generated method stub
if (isCanScroll) {
return super.onInterceptTouchEvent(arg0);
} else {
return false;
}

}

public boolean isScrollble() {
return isCanScroll;
}

public void setScrollble(boolean isCanScroll) {
this.isCanScroll = isCanScroll;
}
追问
重写后要怎么使用到我的源代码?
追答
之前用Viewpager的地方换成CanotSlidingViewpager 就行了
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1a235aba15
推荐于2016-04-07 · 超过80用户采纳过TA的回答
知道小有建树答主
回答量:147
采纳率:0%
帮助的人:122万
展开全部

重写ViewPager,把里面的事件滑动处理取消掉。

重写后,可以实现代码切换页面,也就是可以通过button点击切换页面。重写的时候具体是把

public boolean onInterceptTouchEvent(MotionEvent arg0) {
return false; 
}
public boolean onTouchEvent(MotionEvent arg0) {
return false;
}
public boolean dispatchKeyEvent(KeyEvent event) {
return super.dispatchKeyEvent(event);
}
public boolean executeKeyEvent(KeyEvent event) {
return false;
}

改掉方法的返回值后,页面就不能滑动了,但是还是能够调用setCurrentItem方法来切换页面的。使用的时候,在xml中把定义ViewPager的地方换成你重写的类的限定名,比如你的类是xxx.xxx.MyPager,定义的时候就

<xxx.xxx.MyPager

这里一样的定义宽高属性啊什么的。

/>

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式