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);
}
vinahost怎么样?vinahost是一家越南的主机商家,至今已经成13年了,企业运营,老牌商家,销售VPS、虚拟主机、域名、邮箱、独立服务器等,机房全部在越南,有Viettle和VNPT两个机房,其中VNPT机房中三网直连国内的机房,他家的产品优势就是100Mbps不限流量。目前,VinaHost商家发布了新的优惠,购买虚拟主机、邮箱、云服务器、VPS超过三个月都有赠送相应的时长,最高送半年...
GigsGigsCloud商家在之前介绍的还是比较多的,因为之前我一直有几台机器在使用,只是最近几年网站都陆续转型删除掉不少的网站和闲置域名,包括今年也都减少网站开始转型自媒体方向。GigsGigsCloud 商家产品还是比较有特色的,有提供香港、新加坡等亚洲机房的云服务器、VPS和独立服务器等。第一、新春优惠活动优惠码:CNY2022-15OFF截止到正月初二,我们可以使用上述优惠码在购买指定G...
官方网站:点击访问ATCLOUD.NET官网优惠码:目前提供Cloud VPS与Storage VPS两款产品的六折优惠活动(续费同价,截止至2021年5月31日)优惠码:UMMBPBR20Z活动方案:一、型号CPU内存磁盘流量优惠价格购买链接VPS-1GB0.5×2.6+GHz1GB20GB1TB$3立即购买VPS-2GB1×2.6+GHz2GB50GB2TB$6立即购买VPS-4GB2×2.6...
seekbar为你推荐
滚动条样式修改在css中怎样改变滚动条的样式4k超高清视频下载为新手推荐几个获取4K片源的途径ico监管ICO为什么被叫停renderpartialreact里面使隐藏的组件显示出来是addclass还是rendershoujiao求【叫兽】的简介yui3求Yui的详细资料东兴证券网站东兴证券开户是假的吗?怎么查微信注册时间怎么查看自己的微信号用了多久怎样删除聊天记录如何删除聊天validdatevalid use date 什么意思
免费国外空间 a5域名交易 电信测速器 星星海 softbank官网 免费美国空间 umax120 华为云服务登录 lick 下载速度测试 web应用服务器 群英网络 腾讯数据库 云服务是什么意思 广东服务器托管 512内存 windowsserver2012r2 phpwind论坛 认证机构 泥瓦工 更多