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);
}
RackNerd 商家我们应该是比较熟悉的商家,速度一般,但是人家便宜且可选机房也是比较多的,较多集中在美国机房。包括前面的新年元旦促销的时候有提供年付10美元左右的方案,实际上RackNerd商家的营销策略也是如此,每逢节日都有活动,配置简单变化,价格基本差不多,所以我们网友看到没有必要囤货,有需要就选择。RackNerd 商家这次2022农历新年也是有几款年付套餐。低至RackNerd VPS...
香港服务器租用多少钱一个月?香港服务器受到很多朋友的青睐,其中免备案成为其特色之一。很多用户想了解香港云服务器价格多少钱,也有同行询问香港服务器的租赁价格,一些实际用户想要了解香港服务器的市场。虽然价格是关注的焦点,但价格并不是香港服务器的全部选择。今天小编介绍了一些影响香港服务器租赁价格的因素,以及在香港租一个月的服务器要花多少钱。影响香港服务器租赁价格的因素:1.香港机房选择香港机房相当于选择...
昨天晚上有收到VULTR服务商的邮件,如果我们有清楚的朋友应该知道VULTR对于新注册用户已经这两年的促销活动是有赠送100美元最高余额,不过这个余额有效期是30天,如果我们到期未使用完的话也会失效的。但是对于我们一般用户来说,这个活动还是不错的,只需要注册新账户充值10美金激活账户就可以。而且我们自己充值的余额还是可以继续使用且无有效期的。如果我们有需要申请的话可以参考"2021年最新可用Vul...
seekbar为你推荐
时间刻度Microsoft Project 时间刻度怎么更改windowsmediawindows media player打开怎么设置素数算法有能写出所有素数的公式吗excel大写金额EXCEL金额大写代发邮件我想做邮件代发,怎么做效果好?暴力破解rar求暴力破解rar压缩包软件netbios协议NETBEUI协议有什么用?java程序员招聘Java程序员,一般招聘都要求些啥方正证券官方网方正证券完美版下载淘码除了爱码,现在哪个验证码平台还能用
德国vps 免费com域名申请 三级域名网站 photonvps 香港主机 美国便宜货网站 免费ddos防火墙 hnyd dux 免费mysql lol台服官网 服务器托管什么意思 免费美国空间 如何用qq邮箱发邮件 卡巴斯基免费试用 常州联通宽带 德隆中文网 lamp是什么意思 注册阿里云邮箱 云服务是什么意思 更多