安卓系统APP开发怎样实现Vector动态图的使用?深圳APP开发公司本文详细来解决这个问题,功能实现动画功能是利用AnimatedVectorDrawable类实现的,需要创建3类XML文件:
1.在res/drawable文件夹中创建定义具有动画属性的VectorDrawable对象的XML文件,文件名为vector_drawable.xml,内容如下所示:
< vector xmlns: android=" http:// schemas. android. com/ apk/ res/ android" android: height=" 64dp"
android: width=" 64dp" android: viewportHeight=" 600" android: viewportWidth=" 600" > < group android: name=" rotationGroup" android: pivotX=" 300. 0" android: pivotY=" 300. 0" android: rotation=" 90. 0" > < path android: name=" pathMorph" android: fillColor="# 000000" android: pathData=" M300, 70 l 0,- 70 70, 70 0, 0 -70, 70z" /> </ group> </ vector>
2.在res/animator文件夹中创建动画XML文件,在此使用了两种动画效果,需要创建两个动画文件,rotation.xml的内容如下所示:
path_morph.xml的内容如下所示:
< objectAnimator xmlns: android=" http:// schemas. android. com/ apk/ res/ android" android: duration=" 6000" android: propertyName=" rotation" android: valueFrom=" 0" android: valueTo=" 360" />
3.在res/drawable文件夹中创建定义AnimatedVectorDrawable对象的XML文件,文件名为vector_animated.xml,内容如下所示:
< set xmlns: android=" http:// schemas. android. com/ apk/ res/ android"> < objectAnimator android: duration=" 3000" android: propertyName=" pathData" android: valueFrom=" M300, 70 l 0,- 70 70, 70 0, 0 -70, 70z" android: valueTo=" M300, 70 l 0,- 70 70, 0 0, 140 -70, 0 z" android: valueType=" pathType"/> </ set>
android:drawable的值就是之前创建的定义VectorDrawable对象的XML文件对象。target中的android:name值就是之前创建的定义VectorDrawable对象的XML文件vector_drawable.xml中的group与path的android:name的值。android:animation的值就是之前创建的动画XML文件对象。在Layout文件中添加一个图像控件显示动画,具体代码如下:
< animated- vector xmlns: android=" http:// schemas. android. com/ apk/ res/ android" android: drawable="@ drawable/ vector_ drawable" > < target android: name=" rotationGroup" android: animation="@ animator/ rotation" />
< target android: name=" pathMorph" android: animation="@ animator/ path_ morph" /> </ animated- vector>
< ImageView android: id="@+ id/ image_ anim_ view" android: layout_ width=" wrap_ content" android: layout_ height=" wrap_ content" app: srcCompat="@ drawable/ vector_ animated" android: layout_ below="@+ id/ textView"
android: layout_ alignRight="@+ id/ textView" android: layout_ alignEnd="@+ id/ textView" android: layout_ marginTop=" 24dp" />
具体播放动画的功能代码如下:
ImageView imageView = (ImageView) findViewById( R. id. image_ anim_ view); Drawable drawable = imageView. getDrawable(); ((AnimatedVectorDrawable) drawable). start();
好了,APP开发公司本文关于“安卓系统APP开发怎样实现Vector动态图的使用”的实操方法就介绍到这里,谢谢关注,博纳网络编辑整理。