Android 波浪实现
来源:互联网 发布:淘宝连接转口令 编辑:程序博客网 时间:2024/05/16 04:45
在github上找到一个优秀Android库,贴上网址https://github.com/restress/android-open-project
看到一个很喜欢的waveview,效果如图,于是就想自己做做看
看了一下github上面的demo 感觉很简单哒
就是先引用一下WaveView的库,然后通过控制控件的progress属性来控制波浪的高度。
可以用来:
1.当背景
2.用作progress bar
不过我想要拿来动态显示数据 ,想做成下图,试试看
新手教程如下:
1.新建一个项目(略),然后添加https://github.com/john990/WaveView下载的项目作为引用
添加引用有两个步骤,首先在 项目/app/libs 里面添加下载的项目
第二步修改gradle里面的dependencies
allprojects {
repositories {
…
maven { url “https://jitpack.io” }
}
}
这个是放在build.gradle(project)里面
dependencies { compile 'com.github.john990:WaveView:v0.9'}
这个放在build.gradle(module:app)里面
2.先按照官方给的demo试试看, 把main.xml和mainActivity贴上
main.xml
<?xml version="1.0" encoding="utf-8"?><FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:wave="http://schemas.android.com/apk/res-auto" android:layout_width="fill_parent" android:layout_height="fill_parent"> <com.john.waveview.WaveView android:id="@+id/wave_view" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#ff702e8c" wave:above_wave_color="@android:color/white" wave:blow_wave_color="@android:color/white" wave:progress="80" wave:wave_height="little" wave:wave_hz="normal" wave:wave_length="middle" /> <SeekBar android:id="@+id/seek_bar" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="bottom|center_horizontal" android:layout_marginBottom="20dp" android:progress="80" /></FrameLayout>
MainActivity
public class MainActivity extends Activity { private SeekBar seekBar; private WaveView waveView; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); seekBar = (SeekBar) findViewById(R.id.seek_bar); waveView = (WaveView) findViewById(R.id.wave_view); seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { waveView.setProgress(progress); } @Override public void onStartTrackingTouch(SeekBar seekBar) { } @Override public void onStopTrackingTouch(SeekBar seekBar) { } }); }}
在copy了代码之后,直接实现了github文档上的示意图。
3.现在剩下的问题就是把它放在一个circle里面
但是众所周知,Android官方是没有圆形layout的
所以就用drawable画一个圆形背景
在res/drawble新建一个circle.xml,建立一个圆形容器
代码如下
<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval" android:useLevel="false"> <solid android:color="@color/colorPrimary"/> <size android:width="50dp" android:height="50dp"/></shape>
然后把main.xml里面WaveView属性background写成
android:background=”@drawable/circle”
然后就实现了原型WaveView
如图
圆形WaveView下载地址
http://download.csdn.net/detail/sparkleyn/9750005
- Android 波浪实现
- Android实现波浪效果 - WaveView
- [Android UI] 波浪特效的实现
- Android自定义控件--波浪球SurfaceView实现
- Android实现波浪动画效果(Bezier)
- Android中实现波浪球效果
- Android 自定义View实现波浪动画
- Android实现波浪效果,带百分比进度
- Android仿360手机卫士波浪球进度的实现
- android 使用贝塞尔曲线实现“波浪”效果思路解析
- Android实现波浪进度效果——ProgressWaveView
- Android 实现根据录音分贝画波浪线
- android波浪背景
- Android水纹波浪动画
- Android绘制波浪线
- WPF 实现波浪浮动效果
- 实现一个自定义波浪View
- 百度外卖-- 波浪效果实现
- mysql数据库查询SQL语句总结
- Linux 字符设备驱动结构(四)—— file_operations 结构体知识解析
- VMware虚拟机与主机共享文件
- Hyperledger Fabric 1.0 安装和使用
- my eclipse 安装破解
- Android 波浪实现
- 3深入理解Android之Gradle学习笔记
- MYSQL order by排序与索引关系总结
- Oracle的一些例子代码
- 无缓存文件编程API,Linux下对文件的分类详解,Linux下常用文件编程函数,不带缓存的I/O操作
- 先记录一下转化json特殊处理
- 火焰动画
- 作为依赖库的library要注意的问题
- XDebug基本配置项说明