UIProgressView zeigt Probleme in iOS 7 an

8

Ich brauche UIProgressView als Teil der UITableView-Zelle für eine iOS 7-Anwendung. Ich habe UIProgressView vom Code auf der rechten Seite der Zelle wie folgt hinzugefügt:

%Vor%

Die Anzeige von UIProgressView ist jedoch etwas merkwürdig. Wenn der Fortschritt gleich Null ist, sieht das UIProgressView-Objekt wie folgt aus:

Wenn ich den Fortschrittswert auf 0,5 setze, wird UIProgressView auf der linken Seite ein Rechteck und bleibt auf der rechten Seite ein abgerundetes Rechteck:

Und wenn ich den Fortschritt auf 0,98 setze, sieht das so aus:

Sie können UIProgressView einfach füllen, indem Sie einfach den Fortschrittswert festlegen und die abgerundete Rechteckform (oder Rechteckform) des Elements die ganze Zeit über beibehalten wird? Oder ist das unmöglich, ohne benutzerdefinierte Grafiken hinzuzufügen oder UIProgressView zu überschreiben?

Vielen Dank im Voraus und mit freundlichen Grüßen.

    
uerceg 18.12.2013, 08:05
quelle

2 Antworten

19

Hatte das gleiche Problem heute und beheben ist nicht so schwer:)

Fügen Sie im Interface Builder eine UIView mit genau der gleichen Größe wie die UIProgressView hinzu. Fügen Sie Ihr UIProgressView in dieser neuen UIView hinzu.

Machen Sie folgendes für Ihre UIView, wenn Sie Ecken möchten:

1) Stellen Sie den Eckradius auf die Hälfte der Höhe ein (z. B. 30px Höhe Fortschrittsbalken bedeutet 15px Eckenradius UIVIew))

%Vor%

2) Setzen Sie die Maske auf Grenzen

%Vor%

3) Setzen Sie den Clip auf Grenzen, damit nichts aus der UIView

herauskommt %Vor%

Und jetzt haben Sie eine abgerundete UIProgressBar mit der gewünschten Höhe.

Wenn Sie keine abgerundeten Ecken wünschen, fügen Sie einfach eine UIView auf die gleiche Weise hinzu, ändern jedoch nur die Hintergrundfarbe auf das gleiche Grau wie das UIProgressbar-Track-Tint.

Goodluck!

-Sjoerd

    
Sjoerd Perfors 03.01.2014, 13:52
quelle
5

Zukünftige Referenz: Ich habe dieses Problem gelöst, indem ich den Eckenradius wie

gesetzt habe %Vor%

Und dann:

%Vor%

Sie brauchen keinen Container für UIProgressView.

    
rocir 26.03.2015 18:19
quelle