Tarik pertama @IBOutlet
@IBOutlet weak var money: UITextField! //輸入金額
@IBOutlet weak var tip: UITextField! //輸入小費
@IBOutlet weak var result: UILabel! //小費計算結果
Pertama atur nilai awal menjadi 0
Kemudian ubah nilai Clear Button menjadi Is always visible
Biarkan kotak input memiliki fungsi ⓧ yang jelas
Terakhir, ubah Jenis Keyboard menjadi Papan Angka
Izinkan pengguna untuk memasukkan angka saja, hindari memasukkan teks dan menyebabkan kesalahan program
Bagian dari tombol kalkulasi
Selain menambahkan mekanisme pemeriksaan untuk mencegah pengguna memasukkan nomor apa pun
if money.text == "" || tip.text == "" {
result.text="ಠ╭╮ಠ"
}
else{
result.text = String(Double(money.text!)! * Double(tip.text!)! / 100)
}
Fungsi keyboard yang ditarik
Metodenya adalah memanggil fungsi resignFirstResponder ()
@IBAction func calculate(_ sender: UIButton) {
money.resignFirstResponder()
tip.resignFirstResponder()
}
func textFieldShouldReturn(_ textField: UITextField) -> Bool{
money.resignFirstResponder()
tip.resignFirstResponder()
return true
}
Tekan sembarang tombol di layar untuk menyingkirkan keyboard
Apakah menambahkan dua fungsi ini
func hideKeyboardWhenTappedAround() {
let tap: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(ViewController.dismissKeyboard))
view.addGestureRecognizer(tap)
}
func dismissKeyboard() {
view.endEditing(true)
}
override func viewDidLoad () {super.viewDidLoad ()} di dalam
Tambahkan satu
self.hideKeyboardWhenTappedAround()
Melindungi basis kode Anda: berurusan dengan nilai enum yang tidak diantisipasi Pernah menghadapi situasi di mana aplikasi Anda mulai mogok entah dari mana, yang setelah diselidiki menghasilkan bahwa backend memberikan nilai untuk bidang berbasis enum tertentu yang tidak ada di dalam enum dalam kode? Pertimbangkan contoh berikut: Ohhh saya suka Teh Tapi bagaimana jika kita mengubah minuman favorit di data JSON dari Teh menjadi Jus (nilai yang tidak ada di dalam enum, Minuman)? Fokus pada bagian pesan: “Cannot initialize Beverage from invalid String value Juice” Jika itu adalah aplikasi yang sebenarnya dan bukan kode taman bermain, aplikasi tersebut akan macet. Jadi, bagaimana kita menjaga fakta bahwa meskipun backend mengirimkan nilai yang tidak valid dalam respons, aplikasi kita seharusnya dapat menanganinya alih-alih langsung mogok? Salah satu cara, dan favorit pribadi saya:
Karena saya telah menulis artikel untuk mengimplementasikan validator untuk formulir login di RxSwift, saya memutuskan untuk menulis artikel untuk ide yang sama menggunakan kerangka kerja Apple Combine. Hampir semua aplikasi seluler memerlukan formulir login dan Anda perlu memvalidasi kredensial pengguna sebelum melanjutkan proses login.
Ini adalah pagi keemasan yang cemerlang di perbukitan barat, saat sinar pertama matahari menyinari rerumputan beku di dataran. Kawanan sapi Angus yang tenang, hitam legam dan besar, membentuk siluet melawan matahari terbit saat mereka menyusuri jalan setapak menuju lokasi yang mereka semua kenal dengan baik; bar sarapan.
Di dunia yang sangat terhubung saat ini, sistem media memainkan peran penting dalam membentuk opini publik, dan akibatnya, dalam pengambilan keputusan yang demokratis. Dalam analisisnya yang mendalam tentang ekonomi politik komunikasi, cendekiawan Robert McChesney menantang kebijaksanaan konvensional dan menyajikan apa yang disebutnya sebagai “lima kebenaran” tentang media.
Ketika Anda tumbuh dewasa, Anda cenderung diberi tahu bahwa dunia adalah apa adanya dan hidup Anda hanya untuk menjalani hidup Anda di dunia, tidak pernah mempertaruhkan hidup Anda, ikuti saja jalan yang ditetapkan dan pada akhirnya mati, dan cobalah untuk tidak melakukannya. hancurkan tembok terlalu banyak. Tapi itu kehidupan yang sangat terbatas.
Gatal di tangan saya menyebar saat saya menawar dengan penjual buku lokal untuk buku lain. Buku ini seperti buku lain yang saya beli baru-baru ini akan menemukan singgasananya di tumpukan 'To Be Read' (TBR) saya; namun, saya membelinya.