2013-01-18 30 views
0

我已成功地将我的进度条的颜色更改为颜色(蓝色,绿色等)中的颜色,但是当我给出特定颜色的十六进制代码时,它。我该如何解决这个问题?Progressbar没有显示任何颜色变化

ProgressBar pg = (ProgressBar)findViewById(R.id.progressBarDownload); 
final float[] roundedCorners = new float[] { 5, 5, 5, 5, 5, 5, 5, 5 }; 
ShapeDrawable progressDrawable = new ShapeDrawable(new RoundRectShape(roundedCorners, null,null)); 
progressDrawable.getPaint().setColor(0x01060012);//<-----problem here? 
ClipDrawable progress = new ClipDrawable(progressDrawable, Gravity.LEFT, ClipDrawable.HORIZONTAL); 
pg.setProgressDrawable(progress); 
pg.setBackgroundDrawable(getResources().getDrawable(android.R.drawable.progress_horizontal)); 
pg.setProgress(40); 

回答

0

尝试这样的..

ProgressBar pg = (ProgressBar)row.findViewById(R.id.progress); 
    final float[] roundedCorners = new float[] { 5, 5, 5, 5, 5, 5, 5, 5 }; 
    pgDrawable = new ShapeDrawable(new RoundRectShape(roundedCorners, null,null)); 
    String MyColor = "#FF00FF"; 
    pgDrawable.getPaint().setColor(Color.parseColor(MyColor)); 
    ClipDrawable progress = new ClipDrawable(pgDrawable, Gravity.LEFT, ClipDrawable.HORIZONTAL); 
    pg.setProgressDrawable(progress); 
    pg.setBackgroundDrawable(getResources().getDrawable(android.R.drawable.progress_horizontal)); 
    pg.setProgress(45); 

进口这

进口android.graphics.drawable *。

progressbar

+0

类,我试过了,但我的应用程序崩溃。它显示logcat中的未知颜色 – Abx

+0

在MyColor字符串中选择diffent颜色 – Janmejoy

+0

@Abhila sh是否正在工作 – Janmejoy

1

使用此代码,它的工作对我来说

  String source = "<b><font color=#ff0000> Loading. Please wait..." 
        + "</font></b>"; 
      pd = ProgressDialog.show(Main.this, "", 

      Html.fromHtml(source), true); 
      pd.setProgressStyle(ProgressDialog.STYLE_SPINNER); 
+0

感谢名单为这个技巧,但我不想使用HTML在我的代码 – Abx

1

尝试,而不是使用十六进制颜色代码的RGB值,你可以很容易地找到使用ColorPic或任何其他类似的十六进制颜色代码的RGB值工具。

0

尝试这样的”

Drawable progressDrawablePause = MainActivity.this.getResources().getDrawable(R.drawable.download_progressbar_pause_bg); 
      progressDrawablePause.setBounds(bar.getProgressDrawable().getBounds()); 
      bar.setProgressDrawable(progressDrawablePause); 
      bar.setProgress(60); 

第一:设置绘制边界 第二:设置progressdrawable 第三:setprogress