一个比较有趣的Android第三方开源波形view:WaveView,这种WaveView在一些常见的APP开发中,以水面波浪波形的形象的生动展示手机还剩余多少电量,存储容量还有多少等,比较形象直观生动。

下载地址:点此下载

wave:above_wave_color wave:blow_wave_color 定义波形的颜色(顶部波形平面的下方)。

 

wave_height 定义波浪的高度。

 

wave_hz 定义波浪起伏的频率赫兹。

 

wave_length 定义波浪的长度。

 

以上几种波浪波形为几种枚举类型。

 

wave:progress 为整型值,以0-100,100表示最高位波浪,0表示最低波浪。

xml文件:

 1 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
 2     xmlns:tools="http://schemas.android.com/tools"
 3     xmlns:wave="http://schemas.android.com/apk/res-auto" 
 4     android:id="@+id/FrameLayout1"
 5     android:layout_width="match_parent"
 6     android:layout_height="match_parent" >
 7 
 8     <com.john.waveview.WaveView
 9         android:id="@+id/wv"
10         android:layout_width="match_parent"
11         android:layout_height="match_parent"
12         android:background="@android:color/white"
13         wave:above_wave_color="#4CAF50"
14         wave:blow_wave_color="#f44336"
15         wave:progress="60"
16         wave:wave_height="large"
17         wave:wave_hz="normal"
18         wave:wave_length="middle" />
19 
20     <SeekBar
21         android:id="@+id/sb"
22         android:layout_width="match_parent"
23         android:layout_height="wrap_content"
24         android:layout_marginBottom="20dp"
25         android:progress="100" />
26 
27 </FrameLayout>

 

 1 package com.lixu.boliang;
 2 
 3 import com.john.waveview.WaveView;
 4 import android.app.Activity;
 5 import android.os.Bundle;
 6 import android.widget.SeekBar;
 7 import android.widget.SeekBar.OnSeekBarChangeListener;
 8 
 9 public class MainActivity extends Activity {
10     WaveView wv;
11 
12     @Override
13     protected void onCreate(Bundle savedInstanceState) {
14         super.onCreate(savedInstanceState);
15         setContentView(R.layout.activity_main);
16 
17         wv = (WaveView) findViewById(R.id.wv);
18 
19         SeekBar sb = (SeekBar) findViewById(R.id.sb);
20 
21         sb.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
22 
23             @Override
24             public void onStopTrackingTouch(SeekBar seekBar) {
25 
26             }
27 
28             @Override
29             public void onStartTrackingTouch(SeekBar seekBar) {
30 
31             }
32 
33             @Override
34             public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
35                 // 进度条改变设置波浪
36                 wv.setProgress(progress);
37             }
38         });
39 
40     }
41 
42 }


运行效果:

 

posted on 2015-11-24 17:39  0代码狂人0  阅读(1361)  评论(0编辑  收藏  举报