tableViewheader의 버튼이 헤더 번호를 인식하지 못합니다. 0

엘리아 크로체 타

이 문제가 있습니다. 도와 주실 수 있기를 바랍니다.

이것은 내가 가지고있는 코드입니다 viewForHeaderInSection.

let button = UIButton(frame: CGRect(x: view.frame.width - (cancel.frame.width + xImage.frame.width + 100), y: view.frame.origin.y, width: cancel.frame.width + xImage.frame.width + 120, height: view.frame.height))
button.backgroundColor = UIColor.blue.withAlphaComponent(0.5)
button.addTarget(self, action: #selector(action), for: .touchUpInside)
view.addSubview(button)

그리고 이것은 actionfunc입니다.

@objc func action(sender: UIButton) {
    let position: CGPoint = sender.convert(CGPoint.zero, to: self.tableView)
    if let indexPath = self.tableView.indexPathForRow(at: position) {
        let section = indexPath.section
        print(section)
    }
}

이제 첫 번째 헤더 (헤더 0)를 제외한 모든 헤더를 탭하면 올바른 섹션이 인쇄됩니다. 헤더 0도 감지하도록 만드는 방법은 무엇입니까?

안드레아 무 그나니 니

버튼의 섹션을 알고 싶다면 섹션을 버튼의 태그에 할당 할 수 있습니다. 예 :

당신의 viewForHeaderInSection

func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
   let button = UIButton(frame: CGRect(x: view.frame.width - (cancel.frame.width + xImage.frame.width + 100), y: view.frame.origin.y, width: cancel.frame.width + xImage.frame.width + 120, height: view.frame.height))
   button.backgroundColor = UIColor.blue.withAlphaComponent(0.5)
   button.addTarget(self, action: #selector(action), for: .touchUpInside)
   view.addSubview(button)
   button.tag = section // this is the trick
}

그리고 액션 내부 :

@objc func action(sender: UIButton) {
    let section = sender.tag
    print(section)
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Sudo가 더 이상 내 비밀번호를 인식하지 못합니다.

분류에서Dev

Sudo가 더 이상 내 비밀번호를 인식하지 못합니다.

분류에서Dev

SwiftUI : 사용자 정의 버튼이 배경과 buttonStyle이 명확한 터치를 인식하지 못합니다.

분류에서Dev

Razor View Page html 버튼 onclick 속성이 중첩 코드 블록의 변수를 인식하지 못합니다.

분류에서Dev

Genymotion이 sdcard의 이미지를 인식하지 못합니다.

분류에서Dev

bash의 glob 패턴이 '('를 인식하지 못합니다.

분류에서Dev

UIscrollView의 UILabel이 UISwipegesture를 인식하지 못합니다.

분류에서Dev

Rspec이 Rails의 content_tag를 인식하지 못합니다.

분류에서Dev

열의 값을 값이 1과 0 인 열의 헤더로 변환합니다.

분류에서Dev

Python-SOAP 서버가 HTTP 헤더의 값을 인식하지 못했습니다.

분류에서Dev

나는 시험에서 5 개의 선택을 가지고있다. csv 데이터베이스가 있습니다. 버튼 중 하나를 누르면 버튼의 텍스트가 다음 헤더로 변경되기를 원합니다.

분류에서Dev

xlst : 헤더 노드의 요소를 다른 노드에 추가합니다 (헤더의 자식이 아님).

분류에서Dev

Powershell이 Word 문서의 헤더 텍스트를 읽지 못합니까?

분류에서Dev

파이썬이 내 함수의 인수 수를 인식하지 못합니다.

분류에서Dev

Ubuntu는 더 이상 Android 장치를 인식하지 못합니다.

분류에서Dev

Windows 7은 더 이상 USB 장치를 인식하지 못합니다.

분류에서Dev

Ubuntu는 더 이상 Android 장치를 인식하지 못합니다.

분류에서Dev

TouchUpInside는 두 번 이상의 클릭을 인식하지 못합니다.

분류에서Dev

XCUITest-이벤트 합성 실패 : 버튼의 히트 포인트를 계산하지 못했습니다.

분류에서Dev

헤더의 제출 버튼을 제출하지 못함

분류에서Dev

Material-UI 버튼은 메뉴를 렌더링하기 전에 3 번의 클릭이 필요합니다.

분류에서Dev

rswag gem이 rspec의 매개 변수를 인식하지 못합니다.

분류에서Dev

PhpStorm이 내 개체의 메서드를 인식하지 못합니다.

분류에서Dev

우분투의 Vim이 내 환경 변수를 인식하지 못합니다.

분류에서Dev

CodeBlocks 컴파일러가 C의 헤더 파일에서 선언 한 함수를 인식하지 못하는 이유는 무엇입니까?

분류에서Dev

요청 헤더에서 사용자 이름과 비밀번호를 찾아서 감지합니다.

분류에서Dev

Enigmail 플러그인이 더 이상 내 개인 키를 인식하지 못합니다.

분류에서Dev

두 개의 헤더가있는 행에 데이터를 쌓고 첫 번째 헤더는 병합되지 않습니다.

분류에서Dev

Android는 Node.js에서 설정 한 응답 헤더를 인식하지 못합니다.

Related 관련 기사

  1. 1

    Sudo가 더 이상 내 비밀번호를 인식하지 못합니다.

  2. 2

    Sudo가 더 이상 내 비밀번호를 인식하지 못합니다.

  3. 3

    SwiftUI : 사용자 정의 버튼이 배경과 buttonStyle이 명확한 터치를 인식하지 못합니다.

  4. 4

    Razor View Page html 버튼 onclick 속성이 중첩 코드 블록의 변수를 인식하지 못합니다.

  5. 5

    Genymotion이 sdcard의 이미지를 인식하지 못합니다.

  6. 6

    bash의 glob 패턴이 '('를 인식하지 못합니다.

  7. 7

    UIscrollView의 UILabel이 UISwipegesture를 인식하지 못합니다.

  8. 8

    Rspec이 Rails의 content_tag를 인식하지 못합니다.

  9. 9

    열의 값을 값이 1과 0 인 열의 헤더로 변환합니다.

  10. 10

    Python-SOAP 서버가 HTTP 헤더의 값을 인식하지 못했습니다.

  11. 11

    나는 시험에서 5 개의 선택을 가지고있다. csv 데이터베이스가 있습니다. 버튼 중 하나를 누르면 버튼의 텍스트가 다음 헤더로 변경되기를 원합니다.

  12. 12

    xlst : 헤더 노드의 요소를 다른 노드에 추가합니다 (헤더의 자식이 아님).

  13. 13

    Powershell이 Word 문서의 헤더 텍스트를 읽지 못합니까?

  14. 14

    파이썬이 내 함수의 인수 수를 인식하지 못합니다.

  15. 15

    Ubuntu는 더 이상 Android 장치를 인식하지 못합니다.

  16. 16

    Windows 7은 더 이상 USB 장치를 인식하지 못합니다.

  17. 17

    Ubuntu는 더 이상 Android 장치를 인식하지 못합니다.

  18. 18

    TouchUpInside는 두 번 이상의 클릭을 인식하지 못합니다.

  19. 19

    XCUITest-이벤트 합성 실패 : 버튼의 히트 포인트를 계산하지 못했습니다.

  20. 20

    헤더의 제출 버튼을 제출하지 못함

  21. 21

    Material-UI 버튼은 메뉴를 렌더링하기 전에 3 번의 클릭이 필요합니다.

  22. 22

    rswag gem이 rspec의 매개 변수를 인식하지 못합니다.

  23. 23

    PhpStorm이 내 개체의 메서드를 인식하지 못합니다.

  24. 24

    우분투의 Vim이 내 환경 변수를 인식하지 못합니다.

  25. 25

    CodeBlocks 컴파일러가 C의 헤더 파일에서 선언 한 함수를 인식하지 못하는 이유는 무엇입니까?

  26. 26

    요청 헤더에서 사용자 이름과 비밀번호를 찾아서 감지합니다.

  27. 27

    Enigmail 플러그인이 더 이상 내 개인 키를 인식하지 못합니다.

  28. 28

    두 개의 헤더가있는 행에 데이터를 쌓고 첫 번째 헤더는 병합되지 않습니다.

  29. 29

    Android는 Node.js에서 설정 한 응답 헤더를 인식하지 못합니다.

뜨겁다태그

보관