gpt4 book ai didi

objective-c - 如何在 Swift 中覆盖 Objective-C 的只读属性?

转载 作者:IT王子 更新时间:2023-10-29 05:25:48 24 4
gpt4 key购买 nike

在 objective-c 中是这样定义的:

@interface AFHTTPRequestOperation : AFURLConnectionOperation

@property (readonly, nonatomic, strong) id responseObject;

如何给这个属性赋值?

我想模拟此属性以备后用。所以我需要在 Swift 中覆盖我自己的 responseObject 。任何想法如何做到这一点?我可以继承、扩展或其他任何东西。唯一的问题是它必须符合 AFHTTPRequestOperation 的类型。

class MyRequestOperation: AFHTTPRequestOperation {

override var responseObject: [String: AnyObject]
}

它产生一个错误:

Getter for responseObject with Objective-C selector responseObject conflicts with getter for responseObject from superclass AHTTPRequestOperation with the same Objective-C selector

最佳答案

所以,答案很简单,正如@Atul Mishra 所说:

class MyRequestOperation: AFHTTPRequestOperation {

var myOverridenResponseObject: AnyObject?

override var responseObject: AnyObject? {

get {
return myOverridenResponseObject
}

set {
myOverridenResponseObject = newValue
}
}
}

关于objective-c - 如何在 Swift 中覆盖 Objective-C 的只读属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31855629/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com