本文整理汇总了Java中android.support.v4.view.ScaleGestureDetectorCompat类的典型用法代码示例。如果您正苦于以下问题:Java ScaleGestureDetectorCompat类的具体用法?Java ScaleGestureDetectorCompat怎么用?Java ScaleGestureDetectorCompat使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
ScaleGestureDetectorCompat类属于android.support.v4.view包,在下文中一共展示了ScaleGestureDetectorCompat类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: ZoomageView
import android.support.v4.view.ScaleGestureDetectorCompat; //导入依赖的package包/类
public ZoomageView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
scaleDetector = new ScaleGestureDetector(context, this);
ScaleGestureDetectorCompat.setQuickScaleEnabled(scaleDetector, false);
startScaleType = getScaleType();
TypedArray values = context.obtainStyledAttributes(attrs, com.jsibbold.zoomage.R.styleable.ZoomageView);
zoomable = values.getBoolean(com.jsibbold.zoomage.R.styleable.ZoomageView_zoomage_zoomable, true);
translatable = values.getBoolean(com.jsibbold.zoomage.R.styleable.ZoomageView_zoomage_translatable, true);
animateOnReset = values.getBoolean(com.jsibbold.zoomage.R.styleable.ZoomageView_zoomage_animateOnReset, true);
autoCenter = values.getBoolean(R.styleable.ZoomageView_zoomage_autoCenter, true);
restrictBounds = values.getBoolean(com.jsibbold.zoomage.R.styleable.ZoomageView_zoomage_restrictBounds, false);
minScale = values.getFloat(com.jsibbold.zoomage.R.styleable.ZoomageView_zoomage_minScale, MIN_SCALE);
maxScale = values.getFloat(com.jsibbold.zoomage.R.styleable.ZoomageView_zoomage_maxScale, MAX_SCALE);
autoResetMode = AutoResetMode.Parser.fromInt(values.getInt(com.jsibbold.zoomage.R.styleable.ZoomageView_zoomage_autoResetMode, AutoResetMode.UNDER));
verifyScaleRange();
values.recycle();
}
示例2: initialize
import android.support.v4.view.ScaleGestureDetectorCompat; //导入依赖的package包/类
/**
* Initializes the header and any static values
*/
private void initialize() {
Context context = getContext();
if (!sInitialized) {
sInitialized = true;
Resources resources = context.getApplicationContext().getResources();
sCropSize = resources.getDimensionPixelSize(R.dimen.photo_crop_width);
sCropDimPaint = new Paint();
sCropDimPaint.setAntiAlias(true);
sCropDimPaint.setColor(resources.getColor(R.color.photo_crop_dim_color));
sCropDimPaint.setStyle(Style.FILL);
sCropPaint = new Paint();
sCropPaint.setAntiAlias(true);
sCropPaint.setColor(resources.getColor(R.color.photo_crop_highlight_color));
sCropPaint.setStyle(Style.STROKE);
sCropPaint.setStrokeWidth(resources.getDimension(R.dimen.photo_crop_stroke_width));
final ViewConfiguration configuration = ViewConfiguration.get(context);
final int touchSlop = configuration.getScaledTouchSlop();
sTouchSlopSquare = touchSlop * touchSlop;
}
mGestureDetector = new GestureDetectorCompat(context, this, null);
mScaleGetureDetector = new ScaleGestureDetector(context, this);
mQuickScaleEnabled = ScaleGestureDetectorCompat.isQuickScaleEnabled(mScaleGetureDetector);
mScaleRunnable = new ScaleRunnable(this);
mTranslateRunnable = new TranslateRunnable(this);
mSnapRunnable = new SnapRunnable(this);
mRotateRunnable = new RotateRunnable(this);
}
示例3: initialize
import android.support.v4.view.ScaleGestureDetectorCompat; //导入依赖的package包/类
private void initialize()
{
Context localContext = getContext();
if (!sInitialized)
{
sInitialized = true;
Resources localResources = localContext.getApplicationContext().getResources();
sCropSize = localResources.getDimensionPixelSize(R.dimen.photo_crop_width);
Paint localPaint1 = new Paint();
sCropDimPaint = localPaint1;
localPaint1.setAntiAlias(true);
sCropDimPaint.setColor(localResources.getColor(R.color.photo_crop_dim_color));
sCropDimPaint.setStyle(Paint.Style.FILL);
Paint localPaint2 = new Paint();
sCropPaint = localPaint2;
localPaint2.setAntiAlias(true);
sCropPaint.setColor(localResources.getColor(R.color.photo_crop_highlight_color));
sCropPaint.setStyle(Paint.Style.STROKE);
sCropPaint.setStrokeWidth(localResources.getDimension(R.dimen.photo_crop_stroke_width));
int i = ViewConfiguration.get(localContext).getScaledTouchSlop();
sTouchSlopSquare = i * i;
}
this.mGestureDetector = new GestureDetectorCompat(localContext, this, (byte)0);
this.mScaleGetureDetector = new ScaleGestureDetector(localContext, this);
this.mQuickScaleEnabled = ScaleGestureDetectorCompat.isQuickScaleEnabled(this.mScaleGetureDetector);
this.mScaleRunnable = new ScaleRunnable(this);
this.mTranslateRunnable = new TranslateRunnable(this);
this.mSnapRunnable = new SnapRunnable(this);
this.mRotateRunnable = new RotateRunnable(this);
}
示例4: onAttachedToWindow
import android.support.v4.view.ScaleGestureDetectorCompat; //导入依赖的package包/类
@TargetApi(Build.VERSION_CODES.KITKAT)
protected void onAttachedToWindow() {
super.onAttachedToWindow();
this.velocityTracker = VelocityTracker.obtain();
this.interpolatorFling = new FoldInterpolator();
this.interpolatorTap = new AccelerateDecelerateInterpolator();
this.pinchDetector = new ScaleGestureDetector(getContext(), this);
ScaleGestureDetectorCompat.setQuickScaleEnabled(pinchDetector, false);
this.viewConfig = ViewConfiguration.get(getContext());
}
示例5: PanScaleProxyView
import android.support.v4.view.ScaleGestureDetectorCompat; //导入依赖的package包/类
public PanScaleProxyView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
setWillNotDraw(true);
// Sets up interactions
mScaleGestureDetector = new ScaleGestureDetector(context, mScaleGestureListener);
ScaleGestureDetectorCompat.setQuickScaleEnabled(mScaleGestureDetector, true);
mGestureDetector = new GestureDetectorCompat(context, mGestureListener);
mScroller = new OverScroller(context);
mZoomer = new Zoomer(context);
}
示例6: onDoubleTapEvent
import android.support.v4.view.ScaleGestureDetectorCompat; //导入依赖的package包/类
@Override
public boolean onDoubleTapEvent(MotionEvent e) {
if (!mPanScaleEnabled || mDragZoomed || e.getActionMasked() != MotionEvent.ACTION_UP) {
return false;
}
mZoomer.forceFinished(true);
hitTest(e.getX(), e.getY(), mZoomFocalPoint);
float startZoom;
if (mRelativeAspectRatio > 1) {
startZoom = 1 / mCurrentViewport.height();
} else {
startZoom = 1 / mCurrentViewport.width();
}
boolean zoomIn = (startZoom < 1.5f);
mZoomer.startZoom(startZoom, zoomIn ? 2f : 1f);
triggerViewportChangedListener();
postAnimateTick();
mNonSingleTapGesture = true;
mNonSingleTapZoomedOut = !zoomIn;
// Workaround for 11952668; blow away the entire scale gesture detector after
// a double tap
mScaleGestureDetector = new ScaleGestureDetector(getContext(), mScaleGestureListener);
ScaleGestureDetectorCompat.setQuickScaleEnabled(mScaleGestureDetector, true);
return true;
}
示例7: init
import android.support.v4.view.ScaleGestureDetectorCompat; //导入依赖的package包/类
private void init() {
ScaleGestureDetectorCompat.setQuickScaleEnabled(scaleGestureDetector, true);
final ViewConfiguration configuration = ViewConfiguration.get(getContext());
mTouchSlop = configuration.getScaledTouchSlop();
}
示例8: TouchGestureDetector
import android.support.v4.view.ScaleGestureDetectorCompat; //导入依赖的package包/类
public TouchGestureDetector(Context context, OnTouchGestureListener listener) {
mGestureDetector = new GestureDetectorCompat(context, listener);
mGestureDetector.setOnDoubleTapListener(listener);
mScaleGestureDetector = new ScaleGestureDetector(context, listener);
ScaleGestureDetectorCompat.setQuickScaleEnabled(mScaleGestureDetector, false);
}
示例9: create
import android.support.v4.view.ScaleGestureDetectorCompat; //导入依赖的package包/类
public void create() {
gestureDetector = new GestureDetectorCompat(view.getContext(), gestureListener);
scaleGestureDetector = new ScaleGestureDetector(view.getContext(), scaleGestureListener);
ScaleGestureDetectorCompat.setQuickScaleEnabled(scaleGestureDetector, true);
view.setOnTouchListener(onTouchListener);
}