Wie setze ich den Schieberegler auf die angeklickte Position und erhalte den Schiebereglerwert an der angeklickten Stelle auf UISlider in der iPhone Programmierung. Ich weiß, wir können den Schieberegler auf diese Position ziehen, aber ich möchte es nicht tun. Kannst du mir bitte sagen, wie man den Schieberegler auf die angeklickte Position setzt? Ist das möglich?
Die Art und Weise, wie ich es gemacht habe, ist, den Schieberegler unterzuklassifizieren und touchesBegan
einzutragen. Wenn der Benutzer auf den Daumenknopfbereich klickt (den wir verfolgen), dann ignoriere den Tipp, aber wo auch immer sonst in der Trackbar wir tun:
:
Sie können dem Schieberegler einfach einen UITapGestureRecognizer hinzufügen und dann das dazugehörige UIEvent und Touches herausziehen, um herauszufinden, wo entlang des UISliders der Tap stattgefunden hat. Dann setze den Wert deines Sliders auf diesen berechneten Wert.
UPDATE:
Richten Sie zunächst Ihren Schieberegler ein und fügen Sie den Gestenerkenner hinzu.
%Vor%Implementiere dann den Selektor
%Vor%* Tipp: Lesen Sie die Dokumentation , um herauszufinden wie man den locationInView extrapoliert und was der Schieberegler sein soll
Ich habe den Unterklasse-UISlider-Code verwendet, um ValueChanged-Ereignisse in ios6 & gt; um einen Snap-to-Grid-Funktionstyp zu implementieren.
Dies war beim Upgrade auf iOS7 nicht möglich, da UIControlEventsValueChanged nicht mehr ausgelöst wurde. Für jeden, der das gleiche Problem hat, wird es durch Hinzufügen einer Zeile in der if () wie folgt behoben:
%Vor%Ich hoffe, es hilft jemandem:)
Ich habe diesen Code verwendet. Holen Sie sich von: Ссылка
%Vor%Hoffe das kann dir helfen.