我要执行的操作:我正在尝试在程序运行时以编程方式启用/禁用在寻呼机中滑动
例如:在流程中,如果我检查条件并返回,则true
启用刷卡,如果条件返回,则false
禁用刷卡。
我正在使用的解决方案是这个
public class CustomViewPager extends ViewPager {
private boolean enabled;
public CustomViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
this.enabled = true;
}
@Override
public boolean onTouchEvent(MotionEvent event) {
if (this.enabled) {
return super.onTouchEvent(event);
}
return false;
}
@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
if (this.enabled) {
return super.onInterceptTouchEvent(event);
}
return false;
}
public void setPagingEnabled(boolean enabled) {
this.enabled = enabled;
} }
然后选择它而不是XML中的内置viewpager
<mypackage.CustomViewPager
android:id="@+id/myViewPager"
android:layout_height="match_parent"
android:layout_width="match_parent" />
您只需要使用“ false”调用“ setPagingEnabled”方法,用户将无法滑动以进行分页。
以上方法的问题:我无法在流上设置属性,即....我可以启用刷卡或禁用刷卡。但是我不能根据条件做到这一点
题:
- 我能以其他方式实现我的目标吗?
- 还是不可能?