2016-07-14 4 views
-1

新しい番号を入力するときに表示されるデフォルトの0を取り除くための変数userIsInTheMiddleOfTypingはどのように機能しますか?コードは次のとおりです。スタンフォードiOS開発コース講義1の電卓デモで、変数userIsInTheMiddleOfTypingはどのように機能しますか?

import UIKit 

class Viewcontroller: UIViewController { 

    IBOutlet weak var display: UILabel! 

    var userIsInTheMiddleOfTyping = false 

    @IBAction func touchDigit(sender: UIButton) { 
     let digit = sender.currentTitle! 
     if userIsInTheModdleOfTyping { 
      let textCurrentlyInDisplay = display.text! 
      display.text = textCurrentlyInDisplay + digit 
     } else { 
      display.text = digit 
     userIsInTheMiddleOfTyping = true 
    } 
+0

よろしいですか?これは変数です。これは、アクションが呼び出された後の最初の(最初の)時間を検出するのに役立ちます。 – Gero

+0

これはかなりばかげた質問だった... – superbot

答えて

0

ユーザーが現在番号を入力しているかどうかを知る必要があるため、必要です。数字を入力している場合は、ディスプレイに現在あるテキストに数字を追加する必要があります。数字を入力していない場合は、押された番号にディスプレイを設定します。

コードに示されているように、ユーザーが現在数値を入力している場合は、一時変数の表示から現在のテキストを保存し、その変数とユーザーが押した数字にディスプレイのテキストを設定します。 userIsInTheMiddleOfTypingがfalseの場合、ディスプレイのテキストを押した桁に設定するだけです。

現在、ユーザーが数字を入力していないため、ディスプレイに「0」と表示されます。この変数がなく、ユーザーが4を押すと、ディスプレイには "04"が表示されます。これは不要です。

関連する問題