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

Java 缩放视图以适应屏幕旋转/模拟onScale()方法,java,android,canvas,scaling,Java,Android,Canvas,Scaling,我正在构建草图应用程序,我想支持屏幕旋转。但在旋转时,我想调整我的视图的大小,就像在图库中一样(所以它适合一个坐标)。我用画布,矩阵,屏幕动画和其他很多东西来缩放它到横向或纵向模式,但遗憾的是我不能实现它 所以问题是,我如何缩放我的抽屉画布以适应横向和portait模式 编辑 好的,所以我真的想实现我从“捏到缩”的效果。我想缩小我的视图。setScaleX并没有给出我需要的结果,所以我需要以某种方式模拟ScaleGestureListener中的onScale()方法。我怎么能这么做 我不确定是

我正在构建草图应用程序,我想支持屏幕旋转。但在旋转时,我想调整我的视图的大小,就像在图库中一样(所以它适合一个坐标)。我用画布,矩阵,屏幕动画和其他很多东西来缩放它到横向或纵向模式,但遗憾的是我不能实现它

所以问题是,我如何缩放我的抽屉画布以适应横向和portait模式

编辑


好的,所以我真的想实现我从“捏到缩”的效果。我想缩小我的视图。setScaleX并没有给出我需要的结果,所以我需要以某种方式模拟ScaleGestureListener中的onScale()方法。我怎么能这么做

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

@Override
public void onConfigurationChanged(Configuration newConfig)
{
    super.onConfigurationChanged(newConfig);
    if(newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE)
    {
        startActivity(new Intent(this, ABCDActivity.class));
    }
}
因此,每次方向发生变化时,您都可以加载新活动。或者,您可以使用canvas和stuff创建一个片段,然后在方向发生变化时,只需使用canvas drauded加载片段,以适应横向模式,而不是加载整个活动