Xcode Version:15.3, Simulator Version: 15.3
//
// ContentView.swift
// TaxCalculator
//
// Created by jeff on 2024/04/07.
//
import SwiftUI
struct ContentView: View {
@State var inputText = ""
@State var Tax8 = 0.0
@State var Tax10 = 0.0
var body: some View {
VStack (spacing:20){
TextField("ここに文字を入力", text: $inputText)
.keyboardType(.numberPad)
Button("計算"){
Tax8 = (Double(inputText) ?? 0) * 0.08
Tax10 = (Double(inputText) ?? 0) * 0.10
}
Text("価格:\(inputText)")
Text("消費税8%:\(Tax8) " )
Text("消費税10%:\(Tax10)")
}
.padding()
}
}
#Preview {
ContentView()
}
上記Swiftコードの下線部に数字しか入力できないように、iPhoneのソフトキーボードを定義しているにもかかわらず、Xcodeでシミュレーションしたところ、下記のように、Macbook Airのキーボードで数字以外の入力ができます。しかも、ソフトキーボードが表示されません。
Simulator → I/O → Keyboard → Connect Hardware Keyboardが選択されていることは原因です。これを使用していると、パソコンのキーボードと連携しているため、ソフトキーボードが表示されません。
このチェックを外したところ、無事にソフトキーボードが表示され、数字しか入力できないように制限されています。