내 사용자 정의 프로토콜을 준수하는 UIView 유형이 필요합니다. 나는 이런 식으로 작업을 수행하려고 노력하지만, 엑스 코드는 적절한 선언 아니라고 말한다 :프로토콜 문제가있는 신속한 타입 이터
typealias ViewThatConformsToProtocol = UIView: MyCustomProtocol
이 너무 작동하지 않습니다
typealias ViewThatConformsToProtocol = UIView, MyCustomProtocol
하지만 대한 서브 클래스를 사용하지 않으 그. 그것을하는 어떤 방법일까요?
P. 서브 클래스로 나는 그것과 같은 것 :
class ViewThatConformsToProtocol: UIView, MyCustomProtocol {
}
하지만 (예를 들어 내 디자인 패턴에 대해이기 때문에 서브 클래 싱을 사용하지 않으 난 그냥 내보기 이것의 behaviou를 지원하는지 알 필요가있을 때 때문에 프로토콜에서 ViewThatConformsToProtocol 하위 클래스로이보기를 원하지 않으며 View1은 Protocol1 및 Protocol2로 확인할 수 있지만 View2는 Protocol1 및 Protocol3을 준수 할 수 있습니다. Objective-C에서는 UIView *viewForProtocol = (UIView<MyCustomProtocol> *)view1
을 쉽게 선언 할 수 있지만 SWIFT에서는 불가능한 것처럼 보입니다. 따라서 둘러보기를 찾고 있습니다.
나는 당신이 달성하기를 정말로 얻지 못합니다. "하위 클래스를 사용했다면 어떻게 할 것인가?" – Sweeper
@Sweeper, 코드 및 설명을 추가했습니다. –
@MaxPevsner,이 문서는 도움이되지 않았습니다 –