进度条始终设置为最大值

时间:2013-10-11 07:40:52

标签: java android android-service

我有一个服务,它将广播发送到显示项目列表的活动 一个网格。特定网格项具有图像和进度条,应在其上更新 广播接收器。活动已在接收方注册,并显示日志。

当发送广播时,接收器更新图像并可以设置图像的alpha 同样但无法更新进度条的进度。始终设置进度条 到最大值以下是接收器中的代码


View v = bookgrid.getChildAt(0);
ProgressBar progress = (ProgressBar)v.findViewById(R.id.book_progress);
RelativeLayout rl = (RelativeLayout)v.findViewById(R.id.book_image);
progress.setVisibility(View.VISIBLE);
rl.setAlpha((float) 0.2);
progress.setProgress(30);

1 个答案:

答案 0 :(得分:0)

我相信您正在尝试使用基于0-100的进度。为此,你必须将进度条最大值设置为100首

http://developer.android.com/reference/android/widget/ProgressBar.html#setMax(int)

将您的代码更改为

View v = bookgrid.getChildAt(0);
ProgressBar progress = (ProgressBar)v.findViewById(R.id.book_progress);
RelativeLayout rl = (RelativeLayout)v.findViewById(R.id.book_image);
progress.setVisibility(View.VISIBLE);
rl.setAlpha((float) 0.2);
progress.setMax(100);
progress.setProgress(30);