android创意进度圈,Android自定义半圆进度条 半圆渐变色进度条带指示 半圆开口大小可自由修改...

Android自定义半圆进度条 半圆渐变色进度条带指示 半圆开口大小可自由修改

首先我们来看下效果图

不同的开口大小只需要修改一个参数即可

半圆1:

89f52cc7cd2150c6e32ae67f42e85330.png

半圆2:

003d0b5ff10f0de939a5463122641f1b.png

半圆3:

566d3e228b0a44995cf30a537e379678.png

如果是你想要的效果,就直接滑动到文章底部,下载源码,然后结合本文章操作说明集成到自己的项目中吧

如果集成

第一步:

下载项目解压,然后用as打开。

第二步:

复制SemicircleProgressBar这个类到自己的项目中

第三步:

在需要显示的布局中,直接使用自定义控件,如下:

具体操作见下图,复制自定义控件的完整路径,然后在xml布局文件中直接引用

93b2fb188aacc6bcb0ff641a768e3cd2.png

第四步:在对应布局的类里面,声明控件,然后给控件通过setProgress方法,设置进度即可

package com.ecaray.semicircleprogressbar;

import android.os.Bundle;

import android.support.v7.app.AppCompatActivity;

import android.view.View;

import android.widget.Button;

import android.widget.TextView;

/**

* 类描述: 自定义半圆进度条

* 创建人: 简雨山舍

* 创建时间: 2018/1/8 11:58

* 修改人: 简雨山舍

* 修改时间: 2018/1/8 11:58

*/

public class MainActivity extends AppCompatActivity {

SemicircleProgressBar percentView;//自定义控件声明

TextView tvProgress;//显示进度的文本

Button btAdd;//加按钮

Button btSubstract;//减按钮

private int progress = 80;//初始进度

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

percentView = findViewById(R.id.progressbar);

tvProgress = findViewById(R.id.tv_progress);

percentView.setProgress(progress);//初始化进度

tvProgress.setText(progress + "%");//初始化进度文本显示

btAdd = findViewById(R.id.bt_add);

btSubstract = findViewById(R.id.bt_subtract);

btAdd.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View view) {

progress += 1;//进度每次加1

if (progress > 99) {//大于99则等于100

progress = 100;

}

percentView.setProgress(progress);//设置进度条显示进度

tvProgress.setText(progress + "%");//设置文本显示进度数字

}

});

btSubstract.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View view) {

progress -= 1;//进度每次减1

if (progress < 0) {//小于0则等于0

progress = 0;

}

percentView.setProgress(progress);//设置进度条显示进度

tvProgress.setText(progress + "%");//设置文本显示进度数字

}

});

}

}

以上,就完成了集成工作,可以跑下程序,看看效果了。

如果需要改变半圆进度条的开口大小,也非常的简单,只需要修改一个参数即可

第一步:

打开SemicircleProgressBar该类,在声明变量中找到

/**

* 两条圆弧的起始角度

* 起始角度控制半圆开口的大小,数值越小开口越大,数值越大开口越小

*/

private double floatAngel = 50;

第二步:

修改他的数值即可

其他的想修改的效果,代码中都有备注,直接修改对应的值看效果即可。

重点内容

最后附上源码下载链接:

http://download.csdn.net/download/beibaokongming/10194333

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值