2017-04-23 2 views
0

나는이 문제를 해결하기 위해 잠시 노력해 왔지만, 나는 실망했다.textField 콘텐츠가 변경 될 때 코드를 실행하는 방법은 무엇입니까?

Xcode 8.3 및 Swift 3 (저는 Mac 용 응용 프로그램을 사용하고 있습니다)을 사용하여 ServiceName이라는 textField가 있으며이 텍스트 필드의 내용이 변경되면 일부 코드를 실행하려고합니다. 이전에 인터페이스 빌더에서이 작업을 수행 할 수 있었던 것보다 기억하지만, 더 이상 가능하지 않게 보였습니다. 코드에서이 작업을 수행해야할지 모르겠습니다. 저는 매우 신속하게 일하기가 매우 쉽습니다. 대리인이 어떻게 작동하는지 이해하지 못하기 때문에 필요한 경우 자세히 설명해 주시겠습니까?

대단히 감사합니다!

+0

예를

에 대한 목표 수준의 재정 controlTextDidChange에서
  • ? –

  • +0

    사용자가 textField에서 데이터를 쓰는 동안 레이블을 업데이트하고 싶습니다 –

    답변

    0
    • 인터페이스 빌더에서 텍스트 필드의 델리게이트를 대상 클래스에 연결하십시오.
    • 대상 클래스에는 NSTextFieldDelegate 프로토콜을 사용합니다. 당신이 무엇을 달성하고자하는
      override func controlTextDidChange(_ notification: Notification) { 
      
          if let textField = notification.object as? NSTextField { 
           let string = textField.stringValue 
           // do something with the text 
      
          } else { 
           super.controlTextDidChange(notification) 
          } 
      } 
      
    +0

    답변 해 주셔서 감사합니다. 정말 미안 해요 : /, 대상 클래스가 무엇인지 이해가 안됩니다. 좀 더 구체적으로 좀 해주실 수 있습니까? –

    +0

    대상 클래스는 텍스트 필드 변경 사항을 모니터링하려는 클래스입니다. – vadian

    +0

    viewController입니까? –

    관련 문제