[Swift] 저는 델리문을 사용하지 않습니다.

7134 단어 XcodeSwiftiOS

환경


Swift 3.1
Xcode 8.3.3

입문


저는 Swift를 공부하는 초보자입니다.나는 루비와 파이썬을 조금밖에 해 본 적이 없다.
델리멘은 어려워서 무슨 뜻인지 모르겠어요.
그래서 나는 출구를 사용하지 않는 설치를 해 보았다.

구현 내용


"TextField(textField)에 문자열을 입력하고 return을 누르면 이 문자열이 Label에 표시됩니다."

나는 델리몬을 사용하지 않는다


결론: 못 했어요.
같은 실행 결과를 얻었지만'return 누르기'를 어떻게 처리해야 할지 모르겠습니다.
마지막으로 어렵게 완성된 것은 "TextField (inputText) 에 문자열을 입력한 후 button (fromField ToLabel) 을 누르면 Label (outputText) 에 입력한 문자열이 표시됩니다.

ViewController.swift
import UIKit
// TextField(inputText)に文字列を入力後、 button(fromFieldToLabel)を押したらLabel(outputText)に入力された文字列が表示される
class ViewController: UIViewController {

  override func viewDidLoad() {
    super.viewDidLoad()
  }

  override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
  }

  // TextFieldとの関連付け
  @IBOutlet weak var inputText: UITextField!
  // Labelとの関連付け
  @IBOutlet weak var outputText: UILabel!
  // Buttonが押された時に実行されるメソッド
  @IBAction func fromFieldToLabel(_ sender: Any) {
    // キーボードを閉じる
    inputText.resignFirstResponder()
    // 入力された文字列を取得
    let text = inputText.text
    // 取得した文字列をLabelに表示
    outputText.text = text
  }
}
만약 Swift 경험이 있는 사람이라면 실현할 수 있지만 그런 보도를 찾지 못했습니다. 물론 저는 도저히 실현할 수 없습니다.
나는 이곳에서 처음으로 델리멘의 필요성을 느꼈다.
・자신은 설치할 수 없지만 삭제문을 사용하면 스위프트 개발원인 Apple에서 준비한 편리한 방법을 사용할 수 있습니다!
・장래에 스스로 설치할 수 있다 하더라도 자신이 설치하는 것보다 이미 준비한 방법을 이용하는 것이 더 수월하다!
이곳에 와서 델리몬의 설명이 마침내 잘 어울렸다.
'return 누르기'처리는 삭제문을 이용하여 간단하게 할 수 있습니다.

삭제문으로 구현


ViewController.swift
import UIKit

class ViewController: UIViewController, UITextFieldDelegate {//ViewControllerクラスをUITextFieldDelegateに適用する

  @IBOutlet weak var textField: UITextField!
  @IBOutlet weak var label: UILabel!

  override func viewDidLoad() {
    super.viewDidLoad()
    // delegateの通知先を自分自身に設定
    textField.delegate = self
  }

  override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
  }

  // delegateの通知内容を指定する
  func textFieldShouldReturn(_ textField: UITextField) -> Bool {
    // キーボードを閉じる
    textField.resignFirstResponder()
    // 入力された文字列を取り出す
    let text = textField.text
    // 取得した文字列をLabelに表示
    label.text = text
    return true
  }
}
추가 실시 내용은 크게 3개다.
1. 클래스에 위임 적용
2. 위임 알림 주소를 자신으로 설정
3. 위임 공지 내용 지정

참고 문헌


나보다 다른 기사를 읽는 것이 델리멘의 설명을 이해하기 쉽다.
델리멘의 개념을 이해하기 위해 이해하기 쉬운 사이트와 기사를 소개해 주십시오.
Swift 언어 학습
협의와 위임에 관한 매우 간단한 견본

델리멘과의 전투가 계속되고 있습니다.

inputText.delegate = self 뭐...
다음:【Swift】hogehoge.delegate=self는 무엇을 하고 있습니까?

좋은 웹페이지 즐겨찾기