缩放视图以适应屏幕旋转/ EMULATING onScale()方法

时间:2014-09-14 11:20:07

标签: java android canvas scaling

我正在构建草图应用程序,我想支持屏幕旋转。但是在旋转时我想像在图库中那样调整我的视图(因此它适合一个坐标)。我使用画布,矩阵,screenanimator和许多其他东西来缩放到横向或纵向模式,但遗憾的是我无法实现它。

所以问题是我如何缩放我绘制的画布以适应风景和肖像模式?

修改

好的,所以我实际上想要实现捏缩放的效果。我想缩小我的观点。 setScaleX并没有给我需要的结果,所以我需要以某种方式模拟ScaleGestureListener中的onScale()方法。我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

我不确定是否有其他有效方法,但这对我有用 -

@Override
public void onConfigurationChanged(Configuration newConfig)
{
    super.onConfigurationChanged(newConfig);
    if(newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE)
    {
        startActivity(new Intent(this, ABCDActivity.class));
    }
}

因此,每次更改方向时,您都可以加载新活动。或者,你可以用canvas和stuff创建一个片段然后加载整个活动,只需加载带有画布的片段,以便在方向改变时适合横向模式。