개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.06.02 20:13

UIControl::show 관련 질문입니다.

목록
  • 백엔드도령 3일 전 2025.06.02 20:13
  • 7
    1
제가 현재 ViewController에서 UIButton을 생성하고 UIControl::show를 사용하여 버튼을 보여주려고 하는데, 이 메서드를 사용하면 버튼이 화면에 나타나지만 터치 이벤트가 잘 안 먹히는 문제가 있습니다.

UIControl::show를 사용한 버튼의 터치 이벤트가 잘 안 먹히는 이유는 무엇이며, 어떻게 해결할 수 있는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  3일 전



    UIControl::show를 사용한 버튼의 터치 이벤트가 잘 안 먹히는 이유는 UIControl::show가 버튼을 화면에 바로 보여주기 때문에 버튼의 기본적인 동작이 제대로 작동하지 않는 때문입니다.

    UIControl::show는 버튼을 화면에 바로 보여주기 때문에 버튼의 touchesBegan, touchesMoved, touchesEnded, touchesCancelled 메서드가 호출되지 않습니다. 따라서 버튼의 터치 이벤트가 잘 안 먹히는 것입니다.

    이 문제를 해결하기 위해서는 버튼을 화면에 직접 추가하는 방법을 사용하는 것이 좋습니다.

    예를 들어, 다음 코드를 사용할 수 있습니다.

    #hostingforum.kr
    swift
    
    let button = UIButton()
    
    button.frame = CGRect(x: 100, y: 100, width: 200, height: 50)
    
    button.setTitle("버튼", for: .normal)
    
    button.addTarget(self, action: #selector(buttonTapped), for: .touchUpInside)
    
    view.addSubview(button)
    
    


    이 코드는 버튼을 화면에 직접 추가하고 버튼의 터치 이벤트를 처리하는 메서드를 설정합니다.

    또한, 버튼의 touchesBegan, touchesMoved, touchesEnded, touchesCancelled 메서드를 직접 구현하여 터치 이벤트를 처리할 수도 있습니다.

    예를 들어, 다음 코드를 사용할 수 있습니다.

    #hostingforum.kr
    swift
    
    override func touchesBegan(_ touches: Set, with event: UIEvent?) {
    
        print("touchesBegan")
    
    }
    
    
    
    override func touchesMoved(_ touches: Set, with event: UIEvent?) {
    
        print("touchesMoved")
    
    }
    
    
    
    override func touchesEnded(_ touches: Set, with event: UIEvent?) {
    
        print("touchesEnded")
    
    }
    
    
    
    override func touchesCancelled(_ touches: Set, with event: UIEvent?) {
    
        print("touchesCancelled")
    
    }
    
    


    이 코드는 버튼의 터치 이벤트를 직접 처리합니다.

    이러한 방법을 사용하면 UIControl::show를 사용한 버튼의 터치 이벤트가 잘 안 먹히는 문제를 해결할 수 있습니다.

    2025-06-02 20:14

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 25,513건 / 28 페이지

검색

게시물 검색