cuốn sách gpt4 ai đã làm

ios - 覆盖 UIImage(名为 : )

In lại Tác giả: Hồ Xil 更新时间:2023-11-01 05:51:48 27 4
mua khóa gpt4 Nike

我正在重写 UIImage 类方法 init(named:)。我的目标是能够检索图像的文件名。

代码看起来像这样:

class UIImageWithFileName: UIImage {

let fileName: String

override init(named:String){
super.init(named)
fileName = named
}
}

由于以下原因,这段代码似乎是不可能的。

我创建了 UIImage 的子类,开始输入 init... 令我惊讶的是没有 init(named:) 方法可以覆盖。以下是 init 方法的完整列表:

nhập mô tả hình ảnh ở đây

nhập mô tả hình ảnh ở đây

如何覆盖 UIImage init(named:)

câu trả lời hay nhất

原来“init(named:”是明确不可继承的。

如果您查看 UIImage 定义,您会看到:

public class UIImage : NSObject, NSSecureCoding, NSCoding {

public /*not inherited*/ init?(named name: String) // load from main bundle

@available(iOS 8.0, *)
public /*not inherited*/ init?(named name: String, inBundle bundle: NSBundle?, compatibleWithTraitCollection traitCollection: UITraitCollection?)

这意味着您需要自己解析或打开文件并将原始数据传递给父类(super class)。

关于ios - 覆盖 UIImage(名为 : ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32284766/

27 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress