2017-06-09 4 views
2

Ich versuche, eine benutzerdefinierte Statusanzeige zu erstellen, die wie folgt aussieht:hinzufügen - Erstellen einer benutzerdefinierten Statusleiste

enter image description here

Ich schaffe das Layout zu erstellen, aber ich don‘ Ich weiß, wie man diesen Kreis an die aktuelle Position des progressBar-Fortschritts anlegt. Weiß jemand, wie man das erreicht?

Mein xml Layout sieht wie folgt aus:

<!-- Define the background properties like color etc --> 
<item android:id="@android:id/background"> 
    <shape> 
     <solid android:color="#ffffff" /> 
     <corners android:radius="1dip" /> 
    </shape> 
</item> 

<!-- Define the progress properties like start color, end color etc --> 
<item android:id="@android:id/progress"> 
    <clip> 
     <shape> 
      <solid android:color="#42cbf4" 
       android:width="40dp"/> 
     </shape> 
    </clip> 
</item> 

ich auch ein Linearlayout für den transparenten Hintergrund hinzugefügt Ich habe versucht, eine andere ovale Form in den Fortschritt Artikel setzen, oder eine andere Form schaffen für secondProgress, aber nichts hat funktioniert. Im Moment sieht es wie folgt aus:

enter image description here

Antwort

0

Ich habe gefunden, was ich gesucht habe. Anstelle der ProgressBar habe ich die SeekBar, die implementiert Daumen ich benötigt. Für die Anpassung verwenden ich das gleiche Layout und für den Daumen habe ich diesen Schnipsel:

thumb.xml:

<?xml version="1.0" encoding="UTF-8"?> 

<gradient 
    android:angle="270" 
    android:endColor="#026b91" 
    android:startColor="#026b91" /> 

<size 
    android:height="30dp" 
    android:width="30dp" /> 

custom_progress_bar.xml:

<!-- Define the background properties like color etc --> 
<item android:id="@android:id/background"> 
    <shape> 
     <solid android:color="#ffffff" /> 
     <corners android:radius="1dip" /> 
    </shape> 
</item> 

<!-- Define the progress properties like start color, end color etc --> 
<item android:id="@android:id/progress"> 
    <clip> 
     <shape> 
      <solid android:color="#42cbf4" 
       android:width="40dp"/> 
     </shape> 
    </clip> 
</item> 

für diejenigen, die individuell gestaltet werden meiner progressBar hinzufügen, habe ich diesen Code:

<SeekBar 
    android:id="@+id/seekBar" 
    android:thumb="@drawable/thumb" 
    android:progressDrawable="@drawable/custom_progress_bar" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" /> 

Weitere Informationen ich diesen Thread verwendet Custom seekbar (thumb size, color and background)

+0

Sieht gut aus ... :) – Geryson

1

Diese Art von ProgressBar„Suchleiste“ genannt wird, und es gibt viele Implementierungen davon online. Vielleicht könnten Sie nach The Android Arsenal suchen, indem Sie "seek" in der Suche eingeben. Übrigens, ich habe eine einfache, aber schöne Seite gefunden. Sie können es finden here.

+0

Danke, das war, was ich war auf der Suche nach. Ich habe es geschafft, es anzupassen, ein weiteres Problem, auf das ich stoße. Ich kann das Attribut nicht finden, um die Höhe des Balkens zu vergrößern. Ich habe die Dokumentation überprüft, konnte sie aber nicht finden. – Phantom

+0

Ich kann es auch nicht finden ... Sie haben zwei Möglichkeiten, eine Lösung zu finden: Suchen Sie nach einer anderen Bibliothek, die diese Art der Anpassung unterstützt ** ODER ** legen Sie diese Bibliothek manuell in das Projekt - so können Sie Ändern Sie die Höhe Ihrer Balken im Code. Natürlich müssen Sie nach dem richtigen Platz für die Höhe der Ansicht suchen, um dies zu erreichen ... – Geryson

Verwandte Themen