当你想在你的代码中找到一个错误时,这很难;当你认为你的代码是不会有错误时,这就更难了。

android中的动画虚线边框

admin 105℃
如何在android中创建任意形状的动画虚线或虚线边框?以XML格式(首选)或编程方式。

请参见下面的图片以获取示例。

alt text

你看过patheffects api演示吗? http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/PathEffects.html

它精确地生成一条动画线,您只需调整到视图边缘的路径即可创建边框。例如:

通过视图参数/任意形状定义路径:

Path path = new Path();
path.addRect(view.getLeft(), view.getTop(), view.getRight(), view.getBottom(), Path.Direction.CW);

然后使用以下命令创建虚线路径效果:

PathEffect pe = new DashPathEffect(new float[] {10, 5, 5, 5}, phase);

然后将其与绘制对象关联并绘制:

mPaint.setPathEffect(pe);
canvas.drawPath(path, mPaint);

编辑:动画效果来自于不断改变相位和重画。在api演示中,它调用ondraw()方法中的invalidate()(它触发ondraw()…)

XML…我想不可能。但您可以使用自定义视图或SurfaceView,并自行处理绘图。玩得开心:)

你能不能用两张9patch的图片作为你想要呈现的图片文件的背景框,两种布局各一张。这些图像在虚线元素的位置方面会有所不同。快速交换视图(可能需要延迟)可能会得到所需的效果。我真的不知道如果让用户继续使用应用程序和咀嚼电池的话会有多大的效果…

转载请注明:我的代码 » android中的动画虚线边框