2016-07-08 3 views
1

私はSnappingSliderを使用しています。 私は、スライダの2つのインスタンスを使用し、使用されるスライダに応じて異なる値を変更できるようにします。スウィフト/スナッピングスライダ/スライダの2つのインスタンス

これは私の現在のコードです:私はスライダーの作者にメールを送ってきたとfollwingテキストが戻った

func snappingSliderDidIncrementValue(slider: SnappingSlider) { 

if slider == sliderA { 
    remainingTime += 0.5 
    remainingTimeLabel.text = "\(remainingTime)" 
} else if slider == sliderB { 
    integerXY = += 0.5 
    labelXY.text = "\(remainingTime)" 
} 

import UIKit 
import SnappingSlider 

class ViewController: UIViewController, SnappingSliderDelegate { 

private var remainingTime:Double = 0 
private let remainingTimeLabel:UILabel = UILabel(frame: CGRectZero) 
private let remainingTimeSlider:SnappingSlider = SnappingSlider(frame: CGRectMake(0.0, 0.0, 10.0, 10.0), title: "Slide Me") 
private let percentageSlider:SnappingSlider = SnappingSlider(frame: CGRectMake(0.0, 0.0, 10.0, 10.0), title: "Slide Me") 

override func viewDidLoad() { 
    super.viewDidLoad() 
    remainingTimeLabel.frame = CGRectMake(0.0, 0.0, self.view.bounds.size.width * 0.5, 80.0) 
    remainingTimeLabel.center = CGPointMake(self.view.bounds.size.width * 0.5, self.view.bounds.size.height * 0.21 - remainingTimeLabel.bounds.size.height * 0.75) 
    remainingTimeLabel.font = UIFont(name: "TrebuchetMS-Bold", size: 25.0) 
    remainingTimeLabel.textColor = UIColor.lightGrayColor() 
    remainingTimeLabel.textAlignment = NSTextAlignment.Center 
    remainingTimeLabel.text = "\(remainingTime)" 
    self.view.addSubview(remainingTimeLabel) 

    remainingTimeSlider.delegate = self 
    remainingTimeSlider.frame = CGRectMake(0.0, 0.0, self.view.bounds.size.width * 0.9, 50.0) 
    remainingTimeSlider.center = CGPointMake(self.view.bounds.size.width * 0.5, self.view.bounds.size.height * 0.2) 
    self.view.addSubview(remainingTimeSlider) 

    percentageSlider.delegate = self 
    percentageSlider.frame = CGRectMake(0.0, 0.0, self.view.bounds.size.width * 0.9, 50.0) 
    percentageSlider.center = CGPointMake(self.view.bounds.size.width * 0.5, self.view.bounds.size.height * 0.4) 
    self.view.addSubview(percentageSlider) 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 

func snappingSliderDidIncrementValue(slider: SnappingSlider) { 

    remainingTime += 0.5 
    remainingTimeLabel.text = "\(remainingTime)" 
} 

func snappingSliderDidDecrementValue(slider: SnappingSlider) { 

    remainingTime = max(0, remainingTime - 0.5) 
    remainingTimeLabel.text = "\(remainingTime)" 
} 


} 

は、私はこのような何かをしたいあなたスライダの複数のインスタンスのデリゲートとして機能するように単一のオブジェクトを設定できます。したがって、スライダの.delegateプロパティを、デリゲートに準拠しているオブジェクトに設定して、デリゲートのコールバック内のチェックを、その下に表示したとおりに行います。

しかし、私はそれを取得しない...ヘルプは非常に感謝しています。

編集:

enter image description here

+0

あなたのコードは基本的に正しい見えます。スライダーとラベルの正しい名前を代用する必要があります。 – vacawama

+0

@vacawama編集を参照してください...助けてくれてありがとう –

答えて

1

あなたはこのような何かをする必要があります。

func snappingSliderDidIncrementValue(slider: SnappingSlider) { 
    if slider == remainingTimeSlider { 
     remainingTime += 0.5 
     remainingTimeLabel.text = "\(remainingTime)" 
    } 
    else if slider == percentageSlider { 
     // do something for this slider 
    } 
} 
+0

それをやった!!!!すごくありがとうございます –

+0

私は助けることができてうれしいです。シアトル、ワシントンをお楽しみください。私はWAに住んでいました(私の名前はVA-CA-WA-MAです)。 – vacawama

+0

ありがとうございます。私は:)あなたの助けをもう一度ありがとう...これでしばらく立ち往生した –

関連する問題