/*
HoldableViewPager.java
Copyright (c) 2014 NTT DOCOMO,INC.
Released under the MIT license
http://opensource.org/licenses/mit-license.php
*/
package org.deviceconnect.android.deviceplugin.irkit.settings.widget;
import android.annotation.SuppressLint;
import android.content.Context;
import android.support.v4.view.ViewPager;
import android.util.AttributeSet;
import android.view.MotionEvent;
/**
* スクロールを制限できるViewPager.
* @author NTT DOCOMO, INC.
*/
public class HoldableViewPager extends ViewPager {
/**
* スクロールできるかのフラグ.
*/
private boolean mScrollable;
/**
* コンストラクタ.
*
* @param context コンテキスト
*/
public HoldableViewPager(final Context context) {
super(context);
mScrollable = true;
}
/**
* コンストラクタ.
*
* @param context コンテキスト
* @param attrs 属性値
*/
public HoldableViewPager(final Context context, final AttributeSet attrs) {
super(context, attrs);
mScrollable = true;
}
@SuppressLint("ClickableViewAccessibility")
@Override
public boolean onTouchEvent(final MotionEvent event) {
if (!mScrollable) {
return false;
}
return super.onTouchEvent(event);
}
@Override
public boolean onInterceptTouchEvent(final MotionEvent event) {
if (!mScrollable) {
return false;
}
return super.onInterceptTouchEvent(event);
}
/**
* スクロールの制限を設定する.
*
* @param s 制限
*/
public void setScrollable(final boolean s) {
this.mScrollable = s;
}
}