• Android面试收集录 2D绘图与动画技术


    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属性来指定的。
  • 相关阅读:
    关于INTEL FPGA设计工具DSP Builder
    关于FPGA电源精度要求
    基于INTEL FPGA硬浮点DSP实现卷积运算
    Redis 笔记(四)—— SET 常用命令
    Redis 笔记(三)—— LIST 常用命令
    Redis 笔记(二)—— STRING 常用命令
    Redis 练习(二)
    Redis 练习(一)
    Redis 笔记(一)——数据类型简介
    Java 中为什么不能创建泛型数组?
  • 原文地址:https://www.cnblogs.com/Jason-Jan/p/8550785.html
Copyright © 2020-2023  润新知