Android 百分比、水波、流量剩余进度球的实现

这篇博客介绍了如何在Android中实现百分比、水波和流量剩余的进度球效果,包括静态和动态波动的实现。内容涵盖了主页面布局、静止页面代码、波浪球效果的代码实现,并展示了在ListView中的应用效果。
摘要由CSDN通过智能技术生成

因为项目中有遇到进度的一个需求,目前类似的在实现网络进度加载和流量用量上比较多,所有今天就把代码贴出来,希望有需要的朋友能够有用到。

1.首先是主页面

package com.zhanglu.percentageball;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;

/**
 * 
 * 项目名称:PercentageBall 类名称:MainActivity 类描述: 主页面 创建人:zhanglu 创建时间:2016-6-1 上午9:04:46 修改人:zhanglu 修改时间:2016-6-1 上午9:04:46 修改备注:
 * 
 * @version
 * 
 */
public class MainActivity extends Activity implements OnClickListener {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		findViewById(R.id.button1).setOnClickListener(this);
		findViewById(R.id.button2).setOnClickListener(this);
		findViewById(R.id.button3).setOnClickListener(this);
	}

	@Override
	public void onClick(View v) {
		switch (v.getId()) {
		case R.id.button1:
			startActivity(new Intent(this, PercentageBallActivty.class));
			break;
		case R.id.button2:
			startActivity(new Intent(this, PercentageBallListviewActivty.class));
			break;
		case R.id.button3:
			startActivity(new Intent(this, PercentageBallWaveActivty.class));
			break;
		default:
			break;
		}

	}

}



2.下面是静止页面的代码

package com.zhanglu.percentageball;

import com.zhanglu.percentageball.view.PercentageBallView;

import android.app.Activity;
import android.os.Bundle;

/**    
 *     
 * 项目名称:PercentageBall    
 * 类名称:PercentageBallActivty    
 * 类描述:    动态波浪球
 * 创建人:zhanglu   
 * 创建时间:2016-6-1 上午9:30:53    
 * 修改人:zhanglu   
 * 修改时间:2016-6-1 上午9:30:53    
 * 修改备注:    
 * @version     
 *     
 */
public class PercentageBallActivty extends Activity {

	private PercentageBallView pv;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.percentage_ball_activty);
		pv = (PercentageBallView) findViewById(R.id.ball);
		pv.setmWaterLevel(0.5f, "10/5");
		pv.startWave();// 开始执行
	}

}
 

下面是实现波浪球的效果代码

package com.zhanglu.percentageball.view;

import android.annotation.TargetApi;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Path;
import android.graphics.RectF;
import android.os.Build;
import android.os.Handler;
import android.os.Parcel;
import android.os.Parcelable;
import android.util.AttributeSet;
import android.view.View;
import android.widget.ProgressBar;

import com.zhanglu.percentageball.R;


/**    
 *     
 * 项目名称:PercentageBall    
 * 类名称:PercentageBallView    
 * 类描述:    实现效果类
 * 创建人:zhanglu   
 * 创建时间:2016-6-1 上午11:20:17    
 * 修改人:zhanglu   
 * 修改时间:2016-6-1 上午11:20:17    
 * 修改备注:    
 * @version     
 *     
 */
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
public class PercentageBallView extends View {

	private Context mContext;

	private in
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值