android旋转缩放布局,Android学习笔记(一):双指缩放及旋转计算

Android双指缩放与旋转实现详解
本文介绍如何在Android中实现双指缩放和旋转功能,通过手势判断并计算旋转角度和缩放比例,结合ImageView的matrix属性展示效果。提供了一个包含计算逻辑和示例代码的简单demo,帮助理解Android手势操作。

请尊重原创,转载请注明来源。

Android中,很多时候会用到手势判断,判断用户当前的手势是移动,还是双指缩放/旋转,关于Android中的手势和gesturedetector,已经有很多人进行过研究了,因此本博客就不介绍gesturedetector了,本文主要介绍如何判断用户当前是双指缩放还是双指旋转,如果缩放,缩放了多少;如果旋转,又旋转了多少度。

本文有demo,会在文章下方附上下载链接。

为了方便说明,本文使用ImageView进行辅助说明,因为ImageView有个matrix属性,可以很方便的看到计算之后的效果。

废话不多说,直接贴代码。

主要布局如下,很简单,就是一个textView和一个imageview,需要注意,imageview的scaleType属性一定要设置为matrix才能使用矩阵改变imageView的效果

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:paddingBottom="@dimen/activity_vertical_margin"

android:paddingLeft="@dimen/activity_horizontal_margin"

android:paddingRight="@dimen/activity_horizontal_margin"

android:paddingTop="@dimen/activity_vertical_margin"

tools:context="com.example.testcalcrotate.MainActivity" >

android:id="@+id/image"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:scaleType="matrix"

android:src="@drawable/test"

/>

android:id="@+id/text"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="@string/hello_world" />

注释都写的很详细,相信你看得懂:

/**

* 移动缩放旋转的demo

*

*/

/**

* @author Administrator

*

*/

public class MainActivity extends ActionBarActivity implements OnTouchListener{

private TextView textView;

private ImageView imageView;

/**

* 旋转角度:相对于默认状态

*/

private double angle=0;

/**

* 缩放比例:相对于默认状态

*/

private double scale=1.0;

/**

* 移动位置:相对于默认状态

*/

pr

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值