내부에 탭이있는 대상을 포함하는 UIButton으로 UIView 하위 클래스를 만들었습니다. 선택기는 UIView 하위 클래스 내에 구현되고 인터페이스 작성기로 연결됩니다.UIView 하위 클래스의 Dealloc이 클래스 메서드 실행을 방지합니다.
하지만 도청 부모 뷰 컨트롤러에 addSubview를 실행할 때 버튼을
performSelector가 발생합니다 : withObject : withObject를 :] : 예를
(나는 ARC를 사용) I을 해제하기 위해 보낸 메시지 dealloc 메서드에서 콘솔 출력을 추가하고 viewDidLoad가 UIView 하위 클래스의 addSubview로 끝나면 바로 그 서브 클래스가 할당 취소됩니다.
어떻게 그런 상황을 방지 할 수 있습니까? 일부 전역 배열에 인스턴스를 추가하는 @property (nonatomic, retain)를 시도했습니다 ... 하지만 운이 없습니다.
강력한 참조가 남아 있지 않으므로 ARC가 객체를 재사용한다는 것을 알고 있지만 그 상황을 방지 할 수는 없습니다.
도움을 주시면 감사하겠습니다.
실제로 그 중 하나를 시도했지만 문제가 지속됩니다./ – Heps
UIButton 참조를 어떻게 작성하고 있습니까? 또한 ViewController 객체의 참조를 어딘가에 생성하고 있습니까? 예, 당신은 그것을 어떻게 창조하고 있습니까? –
처음에는보기에서 단추를 만든 다음 IBAction touchUpInside (몇 마우스 끌기)를 작성했습니다. 이제 @property (비 원자력, 강함)로 콘센트를 만들었지 만 상태. – Heps