私はiOSのdevのに新たなんだと私はiTunesのU.でiOS9のDevスタンフォード電卓ディスプレイ風景
をスタンフォードiOS9コースを以下だと、私は、デバイスを回転させたときにUILabelの表示が消えたときに、私は非常に混乱していた時に消えました
iPhone 5Sシミュレータ:風景へ。また、私のiPod touch(iOSの9.3)
上に表示さしかし、iPhone 6やiPadシミュレータ
に微細であるように思わそして、ここに私のストーリーボードがありますされていません。
私のXcodeバージョンは7.3.1
理由を知っていますか? 感謝!
---------------------------------------------------------
I
ビューのデバッグを使用しようとしたとき、私は表示とパネルを含むスタックビューのプロパティ "Distribution"を "fill"から "proportionally"に変更しようとしました。 。。ディスプレイはラインになりました。しかし、私はまだミスを見つけることができないすべての制約が正しいように見えることが判明
コード:
のViewController
import UIKit
class ViewController: UIViewController {
@IBOutlet private weak var display: UILabel!
private var userIsInTheMiddleOfTyping=false
private var userTypedDecimalPoint=false
@IBAction private func touchDigit(sender: UIButton) {
let digit=sender.currentTitle!
if userIsInTheMiddleOfTyping && display.text != "0" {
if userTypedDecimalPoint && (digit == "."){
} else {
let textCurrentlyInDisplay = display.text!
display.text = textCurrentlyInDisplay + digit
if digit == "." {
userTypedDecimalPoint = true
}
}
} else {
if digit == "." {
display.text = "0."
userTypedDecimalPoint = true
} else if (digit == "0") && (display.text == "0") {
// Do nothing...
} else {
display.text = digit
}
}
userIsInTheMiddleOfTyping = true
}
private var displayValue: Double {
get {
return Double(display.text!)!
}
set {
display.text = String(newValue)
}
}
private var brain = CalculatorBrain()
@IBAction private func performOperation(sender: UIButton) {
if userIsInTheMiddleOfTyping {
brain.setOperand(displayValue)
userIsInTheMiddleOfTyping = false
}
userTypedDecimalPoint = false
if let mathmaticalSymbol = sender.currentTitle {
brain.performOperation(mathmaticalSymbol)
}
displayValue = brain.result
}
}
を.swiftそして、私はファイルを変更しませんでしたが=最上位のスタックを表示するために、「比例的塗りつぶし」の配布を設定してみ
関連するコードと文脈を投稿してください – Preuk
私の最初の推測はレイアウトの制約になります。しかし、それをデバッグする方法は、Xcodeのビューデバッグ機能を使用することです。それはあなたのラベルをブロックするものがあるのか、それがオフスクリーンであるのかどうかを見ることができます。 –
@PhillipMillsあなたの助言に感謝し、私はディスプレイが1行になったことがわかりました!そして制約はうまくいくようだ –