相关疑难解决方法(0)

Android ImageView缩放和翻译问题

我正在开发一个Android应用程序(API 19 4.4),我遇到了ImageViews的一些问题.我有一个SurfaceView,我在其中动态添加我想对触摸事件做出反应的ImageViews.到目前为止,我已经成功地使ImageView移动并且平滑地缩放,但是我有一个讨厌的行为.

当我将图像缩小到一定限度(我会说原始尺寸的一半)并且我尝试移动它时,图像闪烁.经过简短的分析,它似乎是围绕屏幕上的手指点对称地切换它的位置,累积距离,最后消失(所有这些都发生得非常快(<1s).我想我错过了与亲戚的关系触摸事件对ImageView/SurfaceView的价值,但我是一个相当的菜鸟,我被困了......

这是我的代码

public class MyImageView extends ImageView {
private ScaleGestureDetector mScaleDetector ;
private static final int MAX_SIZE = 1024;

private static final String TAG = "MyImageView";
PointF DownPT = new PointF(); // Record Mouse Position When Pressed Down
PointF StartPT = new PointF(); // Record Start Position of 'img'

public MyImageView(Context context) {
    super(context);
    mScaleDetector = new ScaleGestureDetector(context,new MySimpleOnScaleGestureListener());
    setBackgroundColor(Color.RED);
    setScaleType(ScaleType.MATRIX);
    setAdjustViewBounds(true);
    RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);

    lp.setMargins(-MAX_SIZE, -MAX_SIZE, -MAX_SIZE, -MAX_SIZE);
    this.setLayoutParams(lp);
    this.setX(MAX_SIZE);
    this.setY(MAX_SIZE);

}

int …
Run Code Online (Sandbox Code Playgroud)

android view translate scale touch

7
推荐指数
1
解决办法
1万
查看次数

标签 统计

android ×1

scale ×1

touch ×1

translate ×1

view ×1