目标:
从旋转视图中获取宽度,高度和边距。
我将视图旋转为:view.animate().rotationBy(90);
我也尝试过使用RotateAnimation这样做,但无济于事。
详细信息:
我正在屏幕上移动非正方形视图,并具有旋转功能,并且我希望将视图保持在屏幕范围内-例如视图的任何部分都不会离开屏幕。或者至少,如果有,它会向后移。
当视图不旋转时,当我使用LayoutParams并防止其顶部和左侧边距为负(或分别大于屏幕的高度/宽度)时,一切正常。旋转视图时遇到了问题,因为当我使用LayoutParams时,它们会保留非旋转视图中的值。
示例:
请参见Excel构建示例的屏幕截图。如果我的原始视图的左上角是从顶部到左侧的每个像元(1,1),则旋转90度时,我希望新的左上角是从顶部开始的两个像元,从顶部开始的零个像元左边(2,0)。但是,就LayoutParams而言,左上角仍为1,1。
在同一示例中,LayoutParams中的高度和宽度不变。无论是否旋转,高度始终为四个单元格,宽度始终为两个单元格。