I 입력으로 stickerURLString를 수신 대리자 메서드 아래이 있습니다단추 매개 변수를 통해 다른 매개 변수에 문자열 매개 변수를 전달하는 방법은 무엇입니까?
- (void)selectedSticker:(NSString *)stickerURLString {
//...
[self.stickerPreviewButton addTarget:self action:@selector(sendStickerPreviewButtonPressed:) forControlEvents:UIControlEventTouchUpInside];
//...
}
그리고 그 선택이 방법 이 sendStickerPreviewButtonPressed 호출 :이 작업을하기 위해 볼 수 있듯이
- (void)sendStickerPreviewButtonPressed: (NSString *)stickerURLString {
[self.delegate InputFunctionView:self sendSticker:stickerURLString];
}
을 예상대로 전달해야합니다 stickerURLString에서 selectedSticker 메서드를 sendStickerPreviewButton 프레스. 대신이의
[self.stickerPreviewButton performSelector:@selector(sendStickerPreviewButtonPressed:) withObject:stickerURLString];
:
나는 이것을 시도
[self.stickerPreviewButton addTarget:self action:@selector(sendStickerPreviewButtonPressed:) forControlEvents:UIControlEventTouchUpInside];
을하지만 오류 "유형 NSException의 캐치되지 않는 예외로 종료"를 받았습니다.
누구나 버튼 매개 변수를 통해 다른 매개 변수로 문자열 매개 변수를 전달하는 방법을 알고 있습니까? 당신은 당신이 변화를 사용할 수있는 함수를 호출 할 performSelector를 사용하는 경우
가능한 복제 (http://stackoverflow.com/questions/24814646/attach-parameter-to-button-addtarget-action-in-swift) –
전역 변수를 선언하고 메서드 내에서 값을 할당하십시오. –
@AnuradhS 예, 코드가 복잡하기 때문에 전역 변수를 사용하지 않아도됩니다. 감사! – SanitLee