解析SVG,需要将一个androidsvg.jar包含进libs
https://github.com/geftimov/android-pathview
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:background="#ff0000"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<com.example.kaiyicky.myapplication.PathView
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/pathView"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:pathColor="@android:color/white"
app:svg="@raw/ironman_white"
app:pathWidth="5"/>
</LinearLayout>
app:svg指定了一个SVG文件,我们可以把这个文章放在raw目录下面
public class MainActivity extends FragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final PathView pathView = (PathView) findViewById(R.id.pathView);
// final Path path = makeConvexArrow(50, 100);
// pathView.setPath(path);
pathView.setFillAfter(true);
pathView.useNaturalColors();
pathView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pathView.getPathAnimator().
delay(100).
duration(1500).
interpolator(new AccelerateDecelerateInterpolator()).
start();
}
});
}
private Path makeConvexArrow(float length, float height) {
final Path path = new Path();
path.moveTo(0.0f, 0.0f);
path.lineTo(length / 4f, 0.0f);
path.lineTo(length, height / 2.0f);
path.lineTo(length / 4f, height);
path.lineTo(0.0f, height);
path.lineTo(length * 3f / 4f, height / 2f);
path.lineTo(0.0f, 0.0f);
path.close();
return path;
}
}
看到注释的部分,调用了makeConvexArraw()方法,如果我们没有在xml文件里面指定svg文件,我们也可以在代码中手动指定绘制的路径
至于这么制作SVG文件,大家可以找美工帮忙,使用ps和ai,可以将图片转换成SVG
http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0825/3362.html
分享到:
相关推荐
博客地址 http://blog.csdn.net/sbsujjbcy/article/details/47417661
主要为大家详细介绍了QML用PathView实现轮播图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
通过 QML 的PathView来实现酷炫的 Cover Flow 图片轮播效果,http://blog.csdn.net/luoyayun361/article/details/77659386
* PathView is an View that animate paths. */ public class PathView extends View { /** * Logging tag. */ public static final String LOG_TAG = "PathView"; /** * The paint for the path. */ ...
qmlpathview基于QML PathView实现的一些效果====================================== 这是QML实现的一个pathview示例,它是完全跨平台的,运行在Linux、OS X和Windows上。 它还可以在 iOS、Android、Wphone、Ubutun ...
android-pathview路径动画库.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
qml时间滚筒控件,使用PathView来实现
android PathView,效果很好看,也很实用
Android-android-pathview.zip,android视图,既有来自构造路径的路径,也有来自svg的路径。,安卓系统是谷歌在2008年设计和制造的。操作系统主要写在爪哇,C和C 的核心组件。它是在linux内核之上构建的,具有安全性...
QML之PathView示例,
PathView,仿BiliBili客户端聊天弹幕室线条动画效果,博客附件,效果请查看博客相对应项目。
继QML2.0TabView之后,打算简单说下PathView这个QML视图,最近找到先前研究的项目,但是对于PathView这个在qml2.0里面继续出现的旧东西,感觉好熟悉,看看qml2.0是否新增了一些特性或者修复了哪些bug,遂研究了下
基于PathView,Qt/QML做的一个可以无限滚动的日历控件 基于PathView,Qt/QML做的一个可以无限滚动的日历控件 基于PathView,Qt/QML做的一个可以无限滚动的日历控件 基于PathView,Qt/QML做的一个可以无限滚动的...
没错,这个效果是使用PathView实现的,而且如果学习过《Qt 5编程入门》,那么实现这个功能应该不难,但是难点在于动画的处理以及那个倒影的实现。再美好的东西都是从最基本的框架完善出来的,所以,我们先从实现基本...
Android手写源码效果PathView.git
QML pathview 简单示例 自己学习成果 与大家分享
Android快速SDK(11)圆弧菜单库PathView【傻瓜模式】
源码android-pathview,path动画,可以从svg或者是path中绘制,android-pathview是绘制路径的Android视图类库,路径来自于svg或者Path构造函数。该类库可以使svg或者正常的Pahts具有动画效果。并且可以改变路径的...