【转】Android Drawable Resource学习(十一)、RotateDrawable
对另一个drawable资源,基于当前的level,进行旋转的drawable。
- 文件位置:
res/drawable/filename.xml
文件名即资源名- 编译数据类型:
- 指向
RotateDrawable的指针。 - 资源引用:
- In Java:
R.drawable.filename
In XML:@[package:]drawable/filename - 语法:
-
<?xml version="1.0" encoding="utf-8"?>
<rotate
xmlns:android="http://schemas.android.com/apk/res/android"
android:drawable=""
android:visible=""
android:fromDegrees=""
android:toDegrees=""
android:pivotX=""
android:pivotY=""/>
元素:
- <rotate>
-
定义一个RotateDrawable,必须作为根元素。
属性:
xmlns:android- String类型。 必须的。定义XML文件的命名空间。必须是
"http://schemas.android.com/apk/res/android". android:drawable-
Drawable 资源。必须的。引用一个drawable资源。
android:visible- Boolean。是否可见。
android:fromDegrees- 整形。 从多少的角度开始旋转
android:toDegrees- 整形。 到多少的角度结束旋转
android:pivotX- 百分比。 旋转的中心在图片X轴的百分比
android:visible- 百分比。 旋转的中心在图片Y轴的百分比
-
- 参考:
示例和解释:
坐标的信息如下:

1、原始图片如下:

2、在 scale.xml文件中定义如下:
- <?xml version="1.0" encoding="utf-8"?>
- <rotate xmlns:android="http://schemas.android.com/apk/res/android"
- android:drawable="@drawable/image02"
- android:visible="true"
- android:fromDegrees="-90"
- android:toDegrees="180"
- android:pivotX="50%"
- android:pivotY="50%">
- </rotate>
那么,图片的初始角度为-90。即如下:

要旋转到的角度如下:

并且是顺时针旋转。
3、那么图片将从-90到180进行旋转。level值为10000,也就是说level每加1000,即顺时针旋转270/10000*1000=27度。
可以根据显示看出来效果。
- public class MainActivity extends Activity{
- RotateDrawable rotateDrawable;
- int level=0;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- ImageView imageView=(ImageView)findViewById(R.id.imgView);
- rotateDrawable=(RotateDrawable)imageView.getDrawable();
- thread.start();
- }
- Thread thread=new Thread(new Runnable() {
- public void run() {
- while (level<=10000) {
- handler.sendEmptyMessage(0x00);
- try {
- Thread.sleep(2000);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
- }
- });
- Handler handler=new Handler(){
- public void handleMessage(Message msg) {
- Toast.makeText(MainActivity.this, level+"", 500).show();
- rotateDrawable.setLevel(level);
- level+=1000;
- };
- };
- }
- from:http://blog.csdn.net/lonelyroamer/article/details/8252533
【转】Android Drawable Resource学习(十一)、RotateDrawable的更多相关文章
- android Drawable Resource学习
转载自: http://blog.csdn.net/true100/article/details/52316423 http://blog.csdn.net/true100/article/deta ...
- Android Drawable绘图学习笔记(转)
如何获取 res 中的资源 数据包package:android.content.res 主要类:Resources Android SDK中的简介:Class for accessing an ap ...
- Android Studio 之 用 Drawable resource file 美化 Button 样式
shape •新建 Drawable resource file 点击 app/src/main/res 找到 drawable 文件夹,右击->New->Drawable Resourc ...
- Android Drawable 与 LayerList综合汇总
先看需求.要求这样的效果 上代码 <?xml version="1.0" encoding="utf-8"? > <layer-list xm ...
- Drawable(1)各种Drawable Resource介绍
简介 Drawable Resources(可绘资源) 是一系列可以在屏幕上被绘制的资源文件,它不只是图片,可以是 xml文件,在xml文件中配置各种绘制参数. 常见Drawable Resource ...
- Android Drawable Mipmap Vector使用及Vector兼容
原文地址:http://blog.csdn.net/eclipsexys/article/details/51838119 http://blog.csdn.net/qq_15545283/artic ...
- Android Drawable 详解(教你画画!)
参考 1.Android中的Drawable基础与自定义Drawable 2.android中的drawable资源 3.Android开发之Shape详细解读 Drawable分类 No xml标签 ...
- Android -- Drawable与Bitmap测试
Drawable 以下这个是测试加载10 ...
- Android Drawable系列(1):自定义背景以及注意事项
0. Shape自身属性 android:shape=["rectangle" | "oval" | "line" | "ring ...
随机推荐
- iptables 用法
又有人攻击服务器了,没有办法又的去防,这里简单介绍一种限制指定IP访问的办法. 单个IP的命令是 iptables -I INPUT -s 59.151.119.180 -j DROP 封IP段的命 ...
- Magento后台订单显示产品图片的修改方法
Magento后台订单原来是没有显示产品图片,客服业务还得到网站前台查找这个产品的图片提供给发货部,这样是很不方便的.为提高工作效率,应客服业务要求,现对Magento后台订单进行修改,使订单页面就显 ...
- Python 读书系列
1. 原文<A byte of Python> 翻译版:<<简明Python教程>> 2. Python:核心编程
- Web前端学习笔记(001)
....编号 ........类别 ............条目 ................明细....................时间 一.Web前端学习笔记 ...
- Oracle PL/SQL高级应用 视图 同义词 序列
视图: 视图叫虚表,即是在哪个表上建立的视图,将那个表的数据用一条查询sql语句查出的数据展现在该视图中,对这个视图操作就是只能对该视图中的数据进行操作,该操作也会保存在建立的表中.可以理解为表上表, ...
- Linux发行分支时间轴
官网:http://futurist.se/gldt/ 全图png:http://futurist.se/gldt/wp-content/uploads/12.10/gldt1210.png 全图sv ...
- 创建数据库时报"FILESTREAM 功能被禁用"
问题,创建含有FileStream数据库时报"FILESTREAM 功能被禁用" 解决方式 修改数据库属性 打开管理配置工具,右键打开sql server的属性,查看FILESTR ...
- 通过开发MSBuild ,引发的注册表相关知识
最近在做一个小项目,目的就是只需要点一个按钮,就把web程序发布到指定的服务器中.基本步骤就是 编译——>打包->复制包到远程服务器->解压缩.我想重点说一下解压缩,我们可以用win ...
- 7. Reverse Integer java
Reverse digits of an integer. Example1: x = 123, return 321Example2: x = -123, return -321 代码如下: pub ...
- Android 中类似ModelWindow的一个实现
Android里一般的画面(Activity)都是尽量占满整个屏幕,这样符合单线程的设计, 而有些类似popup之类的子画面,却希望他弹出来的时候表现的如同web的模态窗口 (ModelWindow, ...