2012-08-15 19 views
5

Ich arbeite an einer Anwendung, die eine "zirkuläre Fortschrittsbalken" in etwa so braucht (es muss keine Farbänderungen haben oder in der Mitte leer sein, eine einfache Sache wäre genug für mich, aber wenn Sie möchten, dass Sie mir sagen, wie Farbänderungen machen als gut ich werde glücklich sein, zu lernen :))Circular Fortschrittsbalken

enter image description here

ich es verwenden, um die Batterie Prozentsatz in meiner app zeigen

+0

Haben Sie versucht, für so etwas gesucht? Wenn ja, was hast du gefunden? – TheZ

+0

Ich habe nicht versucht, weil ich nicht weiß, wo ich anfangen soll, ich suchte auf stackoverflow, aber ich fand nur Javascript Ergebnisse, ich weiß nicht einmal, was genau zu suchen – DoubleP90

+0

Hmmm, vielleicht? http://stackoverflow.com/questions/3874424/android-looking-for-a-drawarc-method-with-inner-outer-radius – TheZ

Antwort

1

Ich weiß nicht, ob ich dich gut verstanden habe, aber ich denke, dass es dir helfen kann: How to change color in circular progress bar?

+0

Ich glaube nicht, dass es das ist, wonach ich suche, von dem, was ich verstehe, ist dies eine Animation eines Fortschrittsbalkens ohne Wert, ich muss ihm einen Wert geben (Batterieprozentsatz) und basierend auf dem Wert, den es ändern muss – DoubleP90

2

Ich hoffe, so etwas wie this lib

Definition in Layout helfen würde, ist einfach:

<com.lylc.widget.circularprogressbar.example.CircularProgressBar 
    android:id="@+id/circularprogressbar1" 
    style="@style/Widget.ProgressBar.Holo.CircularProgressBar" 
    android:layout_width="120dip" 
    android:layout_height="120dip" 
    android:layout_marginTop="10dip" 
    circular:subtitle="subtitle" 
    circular:title="Title" /> 

und Nutzung ist nicht so gut kompliziert:

CircularProgressBar c3 = (CircularProgressBar) findViewById(R.id.circularprogressbar3); 
c3.setTitle("June"); 
c3.setSubTitle("2013"); 
c3.setProgress(42); 

Es unterstützt animierte Fortschritt als auch in falls du es brauchst. Alle Credits zum ursprünglichen Autor. Ich habe es gerade gefunden. Ich hoffe, es hat geholfen

0

Verwenden Sie diese Methode zu und stellen Sie es auf Bild sehen Sie eine Bitmap in der Bildansicht. Mit diesem Code können Sie einen Fortschrittsdialog anzeigen.

private void circularImageBar(ImageView iv2, int i) { 


    Bitmap b = Bitmap.createBitmap(300, 300,Bitmap.Config.ARGB_8888); 
    Canvas canvas = new Canvas(b); 
    Paint paint = new Paint(); 

     paint.setColor(Color.parseColor("#c4c4c4")); 
     paint.setStrokeWidth(10); 
     paint.setStyle(Paint.Style.STROKE); 
     canvas.drawCircle(150, 150, 140, paint); 

     paint.setColor(Color.parseColor("#FFDB4C")); 
     paint.setStrokeWidth(10); 
     paint.setStyle(Paint.Style.FILL); 
     final RectF oval = new RectF(); 
     paint.setStyle(Paint.Style.STROKE); 
     oval.set(10,10,290,290); 

     canvas.drawArc(oval, 270, ((i*360)/100), false, paint); 
     paint.setStrokeWidth(0);  
     paint.setTextAlign(Align.CENTER); 
     paint.setColor(Color.parseColor("#8E8E93")); 
     paint.setTextSize(140); 

     canvas.drawText(""+i, 150, 150+(paint.getTextSize()/3), paint); 

     iv2.setImageBitmap(b); 
}