고양이 나이를 인간 나이로 환산한다(Double과 String이 서로 바뀐다)

7695 단어 Xcode6SwiftiOS

해본 일

  • 고양이 나이 만들기 <-> 인간 나이 환산 프로그램
  • 수치 키보드에 지우기 버튼 표시
  • 화면 클릭으로 키보드 숨기기
  • Double<->String의 변환이 얼마나 유용한가.
    '상세한 Objective-C 아이폰 앱 개발 입문 노트'Chapter 4-3의 학습 기록.

    코드


    ViewController.swift
    class ViewController: UIViewController {
    
        // 年齢テキストボックス
        @IBOutlet weak var inputAge: UITextField!
        // 換算後年齢ラベル
        @IBOutlet weak var resultAge: UILabel!
        // 自作クラス
        var mp = MyProc()
    
        override func viewDidLoad() {
            super.viewDidLoad()
            // Do any additional setup after loading the view, typically from a nib.
    
        }
    
        // 換算ボタンを押す
        @IBAction func convertAge(sender: AnyObject) {
    
            var input = self.inputAge.text
            var res:NSString = mp.convertAgeFromCatToHuman(input)
            self.resultAge.text = res
        }
    
        // 背景をタップ
        @IBAction func bkgTapped(sender: UITapGestureRecognizer) {
    
            //キーボードを閉じる
            self.view.endEditing(true)
        }
    
        override func didReceiveMemoryWarning() {
            super.didReceiveMemoryWarning()
            // Dispose of any resources that can be recreated.
        }
    
    
    }
    
    MyProc.swift
    
    class MyProc:NSObject {
    
        // 初期化
        override init() {
    
        }
    
        // 猫の年齢を人間の年齢に変換する
        func convertAgeFromCatToHuman(catAge: NSString) -> String{
    
            // Doubleに変換
            var catAgeDbl = catAge.doubleValue
            var hmnAge:Double = 0
            if (catAgeDbl <= 1) {
                hmnAge = catAgeDbl + 20
            } else if (catAgeDbl <= 5) {
                hmnAge = catAgeDbl * 6 + 15
            } else if (catAgeDbl <= 10) {
                hmnAge = catAgeDbl * 5 + 20
            } else if (catAgeDbl <= 15) {
                hmnAge = catAgeDbl * 4 + 30
            } else {
                hmnAge = catAgeDbl * 3 + 45
            }
    
            var hmnAgeStr = NSString(format: "%.1f", hmnAge)
            return hmnAgeStr
        }
    }
    

    원본 파일


    모르다

  • 콘솔 오류
    2014-10-24 22:49:04.462 CatAge[2506:72454] Can't find keyplane that supports type 8 for keyboard iPhone-Portrait-DecimalPad; using 1425143906_Portrait_iPhone-Simple-Pad_Default
  • 책에서delegate로 텍스트 상자의 입력을 제어하지만delegate 방법의 쓰기를 모른다.그래서 이번엔 포기했어.
  • 좋은 웹페이지 즐겨찾기