1

AppCode を使用してゲージを作成しました。入力に応じて、真ん中のゲージの矢印が回転します。Swift でスライダーを使用して、ゲージの矢印をどれだけ回転させるかを決定したいと考えています。入力をハードコーディングすると、矢印が適切な位置に回転します。たとえば、0.5 と入力すると、矢印はゲージの中心を指します。

私の問題は、UIView が新しいスライダーの位置に応じて矢印を更新しないことです。矢印は、UISlider の「Current」値に応じて常に配置されます。UISlider に関して UIView をリアルタイムで更新するにはどうすればよいですか。

「drawRect」関数を「ratingSliderChanged」アクション関数に入れるべきだと感じています。これをしようとすると、ゲージが表示されません。

import Foundation
import UIKit

class RatingViewController: UIView {

  var sliderValue: CGFloat = 0.0

  @IBOutlet var newView:UIView!

  @IBAction func ratingSliderChanged(sender: UISlider){
   sliderValue = CGFloat(sender.value)
   println(sliderValue)
  }

 override func drawRect(rect: CGRect) {

  RatingGaugeStyleKit.drawCanvas1(frame: self.bounds, arrowAngle: sliderValue)

 }
}

助言がありますか?

4

2 に答える 2

1

だから私は AppCode の誰かの助けを借りてそれを行うことができました。

基本的に画像は動的なので、呼び出す必要があります

 func setNeedsDisplay() 

UISlider が変更されたとき。このようにして、図面のパラメーターが変更されたときに UIView を確実に更新します。この場合、私のパラメーターは UISlider の値です。

将来これを必要とする人にとって、私の説明が明確であることを願っています。

于 2015-03-29T12:57:05.293 に答える