1.如何在Android应用程序的窗口上绘制图形?

  • 继承View
  • 实现View中的onDraw()方法

2.如何绘制圆,空心椭圆?

  • canvas.drawArc或canvas.drawCircle方法 绘制圆
  • canvas.drawArc(矩形对象,0,360,true,paint);

3.绘制位图的两种方法?

  • 法1:canvas.drawBitmap(bitmap,10,10,null);  //在画布上画图
  • 法2:drawable.draw(canvas);  //把图粘贴到画布上

4.如何设置图像的透明度?

  • paint.setAlpha(99);

5.如何旋转图形?

  • Matrix matrix=new Matrix();
  • matrix.setRotate(120,坐标1,坐标2); //按照坐标旋转120度
  • canvas.setMatrix(matrix);

6.如何用View实现动画效果?

  • 通过调用View.invalidate方法使手机屏幕不断刷新

7.请描述一下Android SDK的绘画API支持哪几种路径?

  • CornerPathEffect类:将线段与线段之间的夹角转换成圆角。
  • DashPathEffect类:该类用于绘制虚线路径。
  • PathDashPathEffect类:该类可以单独组成虚线路径。
  • ComposePathEffect类:该类可以将两种特效组合在一起。

8.如何实现文字呈现一个圆形显示?

  • 使用canvas.drawTextOnPath("文字",path,-55,0,paint);

9.如何控制帧动画的循环?

  • 静态配置:在帧动画文件中设置android:oneshot属性
  • 动态配置:使用AnimationDrawable.setOneshot方法

10.Android SDK 支持哪几种补间动画?

  • 移动补间动画
  • 旋转补间动画
  • 缩放补间动画
  • 透明度补间动画

11.如何自定义动画渲染器?

  • 自定义类实现Interpolator接口
  • 使用Animation来配合调用该渲染器
  • 注意:自定义渲染器是无法通过XML文件中android:interpolator属性来指定的。

转载于:https://www.cnblogs.com/Jason-Jan/p/8550785.html

Android面试收集录 2D绘图与动画技术相关推荐

  1. Android面试收集录12 View测量、布局及绘制原理

    一.View绘制的流程框架 View的绘制是从上往下一层层迭代下来的.DecorView-->ViewGroup(--->ViewGroup)-->View ,按照这个流程从上往下, ...

  2. Android面试收集录13 Android虚拟机及编译过程

    一.什么是Dalvik虚拟机 Dalvik是Google公司自己设计用于Android平台的Java虚拟机,它是Android平台的重要组成部分,支持dex格式(Dalvik Executable)的 ...

  3. Android面试收集录4 Fragment详解

    1.什么是Fragment? 你可以简单的理解为,Fragment是显示在Activity中的Activity. 它可以显示在Activity中,然后它也可以显示出一些内容. 因为它拥有自己的生命周期 ...

  4. android文件存储数组,Android面试简录——文件存储

    * SharedPreferences 请描述Android SDK支持哪些文件存储技术? 1.SharedPreferences保存key-value类型的数据 2.流文件存储(openFileOu ...

  5. 应该是史上最全最新Java和Android面试题目(自己总结和收集的)

    Android面试题目 Java 基础 int占用几个字节 讲一下常见编码方式? UTF-8编码下中文占几个字节 int和Interger的区别 int.char.long各占多少字节数 string ...

  6. Android面试资料整理

    文章目录 前言 面试问题整理 Android 问题 一.Activity 1.Activity 的生命周期 2.onStart()和onResume().onPause()和onStop()的区别? ...

  7. 【转】Android 自己收集的开源项目和文章集合(持续更新至2018.12.17)

    2017-12-21 1.炫酷开屏动画框架 https://github.com/JoshuaRogue/FancyView 2.防京东,支付宝密码键盘和密码输入框 https://github.co ...

  8. Android 面试真题收录~

    Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发.这里会不断收集和更新Android基础相关的面试题 ...

  9. Android面试基础一

    Android面试基础二-原理及常见问题 目录 1.四大组件 1)Activity 2)Service 3)ContentProvider 4)Broadcast Receiver 2.四大组件的生命 ...

最新文章

  1. 解决WAS报错SRVE0207E: servlet 创建了未捕获到的初始化异常
  2. javascript高级程序设计之变量、作用域和内存问题
  3. 架构师必看 京东咚咚架构演进
  4. 比较二进制_浮点数比较的精度问题
  5. mac 显示隐藏文件_MacOS如何隐藏、加密文件或文件夹
  6. 如何让两个线程交替打印整数1-100?你的答案呢?
  7. 蚂蚁集团前三季度营收1181.91亿元 支付宝月活用户7.31亿
  8. 如何打造自己强大的气场?
  9. 微信公众号开发获取code
  10. linux ubuntu 加密狗,ubuntu – 将usb加密狗连接到KVM VM
  11. 香农编码的MATLAB实现
  12. 程序员的高薪是编程语言决定的么?图样图森破啊。
  13. Python快速编程入门#学习笔记06# |第6章 :函数(学生管理系统)
  14. 一些《集成电路与光刻机》笔记
  15. 计算机科学导论第三版——第一章课后习题(贝赫鲁兹·佛罗赞BehrouzForouzan)(渐水问个人答案笔记csdn)
  16. AWS全球年度技术大会--上海站、广州站
  17. HDU4801 转魔方、DFS模拟
  18. python删除数据框空行_Python删除空行
  19. 精彩东博会丨我委会员单位联通沃音乐打卡第五届中国—东盟信息港论坛:穿越元宇宙 沉浸新技术
  20. 抗衰老产品nmn,nmn纯度越高越好吗,揭秘nmn的老底

热门文章

  1. hashMap put方法 第二行代码
  2. 对vuex的一点理解
  3. DNS and Bind (二)
  4. 青云SDN/NFV2.0架构剖析
  5. Jsoup解析的例子 之 选择器
  6. oracle 学习——巨人的肩膀
  7. checkbox和radio的样式美化问题
  8. Artech的MVC4框架学习——第三章controller的激活
  9. 计算机常用英语(2)
  10. android TextView设置字体颜色