seekbar如何实现弧形的进度条或SeekBar
seekbar 时间:2021-06-16 阅读:(
)
在android的音乐播放器中用到的seekBar控件怎么用
int position = mediaPlayer.getCurrentPosition();
int total = mediaPlayer.getDuration();
int max = seekBar.getMax();
if (position>=0&&total!=0) {
seekBar.setProgress(position*max/total);
}
这是随着播放更新进度条的,拖动视频和这个差不多。
不懂追问。
怎么得到seekbar进度的位置
seekbar.setOnSeekBarChangeListener(new seekbarListener()); //这个监听seekbar变化的,一旦有变,变化到哪progress表示 private class seekbarListener implements OnSeekBarChangeListener{ @Override public void onProgressChangedandroid seekbar 单击事件
1.先把你的xml文件写好
2.用这个代码:
SeekBar fSlider = (SeekBar) findViewById(R.id.songProgressBar);
fSlider.setProgress(0); // 这个很重要
OnSeekBarChangeListener progressListener = new OnSeekBarChangeListener() {
public void TrackingTouch(SeekBar seekBar) { }
public void onStartTrackingTouch(SeekBar seekBar) { }
public void onProgressChanged(SeekBar seekBar,
int progress,
boolean fromUser) {
if(fromUser)
//做一些事;
}
};
fSlider.setOnSeekBarChangeListener(progressListener);如何实现弧形的进度条或SeekBar
[Android UI界面]如何实现弧形的进度条或SeekBar? 转载
public MusicSeekbar(Context context, AttributeSet attrs)
{
super(context, attrs);
mContext = context;
mPaint.setAntiAlias(true);
mPaint.setFilterBitmap(true);
mPaint.setStrokeWidth(4);
mPaint.setColor(getResources().getColor(R.color.music_seekbar));
mPaint.setStyle(Style.STROKE);
mBitmapDot = BitmapFactory.decodeResource(getResources(),
R.drawable.ui_music_dot);
// if(mThread==null)
// {
// mThread=new Thread(new myThread());
// mThread.start();
// }
mPaintText.setAntiAlias(true);
mPaintText.setStyle(Style.STROKE);
mPaintText.setStrokeWidth(1);
// conn=new MediaPlayerServiceConnection(mContext);
// init();
}
protected void onDraw(Canvas canvas) {
mLeft = (float) (Centre_X - RADIUS
* Math.cos((90 - mSeekBarTotalDegree / 2 + mDegree) / 180
* Math.PI));
mTop = (float) (Centre_Y - RADIUS
* Math.sin((90 - mSeekBarTotalDegree / 2 + mDegree) / 180
* Math.PI));
Shader mLinearGradient = new LinearGradient(mLeft - 80, 100, mLeft,
100, new int[] {
getResources().getColor(R.color.music_seekbar),
getResources().getColor(R.color.music_seekbar1) },
null, Shader.TileMode.CLAMP);
mPaint.setShader(mLinearGradient);
canvas.drawArc(mRect, mStartDegree, mDegree, false, mPaint);
canvas.drawBitmap(mBitmapDot, mLeft - 20, mTop - 20, new Paint());
canvas.save();
canvas.rotate(-22, Centre_X, Centre_Y);
mPaintText.setColor(getResources().getColor(R.color.music_seekbar));
canvas.drawText(formatTime(mCurTime), 150, 0, mPaintText);
canvas.restore();
canvas.save();
canvas.rotate(20, Centre_X, Centre_Y);
mPaintText.setColor(Color.WHITE);
canvas.drawText(formatTime(mDuration), 150, 0, mPaintText);
canvas.restore();
super.onDraw(canvas);
}
关于HostYun主机商在之前也有几次分享,这个前身是我们可能熟悉的小众的HostShare商家,主要就是提供廉价主机,那时候官方还声称选择这个品牌的机器不要用于正式生产项目,如今这个品牌重新转变成Hostyun。目前提供的VPS主机包括KVM和XEN架构,数据中心可选日本、韩国、香港和美国的多个地区机房,电信双程CN2 GIA线路,香港和日本机房,均为国内直连线路,访问质量不错。今天和大家分享下...
sharktech怎么样?sharktech (鲨鱼机房)是一家成立于 2003 年的知名美国老牌主机商,又称鲨鱼机房或者SK 机房,一直主打高防系列产品,提供独立服务器租用业务和 VPS 主机,自营机房在美国洛杉矶、丹佛、芝加哥和荷兰阿姆斯特丹,所有产品均提供 DDoS 防护。不知道大家是否注意到sharktech的所有服务器的带宽价格全部跳楼跳水,降幅简直不忍直视了,还没有见过这么便宜的独立服...
iWebFusion(iWFHosting)在部落分享过很多次了,这是成立于2001年的老牌国外主机商H4Y旗下站点,提供的产品包括虚拟主机、VPS和独立服务器租用等等,其中VPS主机基于KVM架构,数据中心可选美国洛杉矶、北卡、本德、蒙蒂塞洛等。商家独立服务器可选5个不同机房,最低每月57美元起,而大流量10Gbps带宽服务器也仅149美元起。首先我们分享几款常规服务器配置信息,以下机器可选择5...
seekbar为你推荐
素数算法判断一个数是否为素数的算法renderpartialreact里面使隐藏的组件显示出来是addclass还是renderpat是什么格式怎么能把常用格式的图片转换成PAT格式的呀~sms是什么什么是SMS协议gas是什么意思petrol和gas的区别腾讯合作伙伴大会腾讯的合作伙伴都有腾讯合作伙伴大会如何成为腾讯渠道合作伙伴?backupexecBackup Exec 2014怎么备份Exchange在线操作系统TOMOS在线操作系统是什么?在线操作系统什么是网络操作系统,与普通操作系统有什么区别
qq云存储 香港bgp机房 双11抢红包攻略 网页背景图片 国外免费空间 什么是服务器托管 亚马逊香港官网 服务器是干什么的 佛山高防服务器 isp服务商 新世界服务器 双线机房 免费邮件服务器 新加坡空间 网页加速 阿里云邮箱怎么注册 小夜博客 锐速 酷锐 蓝队云 更多