我正在制作一个应用程序,但我对如何在扩展文件中调用该函数感到困惑。
这是我试图从扩展中调用函数的代码。
import UIKit
class RecipeTableViewCell: UITableViewCell {
@IBOutlet weak var commnetLabel: UILabel!
@IBOutlet weak var recipeImageView: UIImageView!
@IBOutlet weak var dateLabel: UILabel!
@IBOutlet weak var recipeTypeLabel: UILabel!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
func configureView(recipe: RecipeData){
commnetLabel.text = recipe.comment
recipeImageView.setImage(imageUrl: recipe.imageUrl)
// dateLabel.text = recipe.recordedAt => get something like 2020-10-01 11:08:42
dateLabel.text = setTemplate(strDate: recipe.recordedAt)
recipeTypeLabel.text = recipe.recipeType
}
}
在configureView函数中,我曾经写过
dateLabel.text = recipe.recordedAt
来向应用程序显示日期。现在我正在尝试更改其显示方式,因此我创建了一个扩展。import Foundation
extension DateFormatter {
func setTemplate (strDate: String) -> String {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = DateFormatter.dateFormat(fromTemplate: "ydMMM", options: 0, locale: Locale(identifier: "ja_JP"))
let result = dateFormatter.string(from: Date())
return result
}
}
我原以为在configureView函数中编写dateLabel.text = setTemplate(strDate: recipe.recordedAt)
可以调用setTemplate函数并更改我的dateLabel的文本。但是,目前我收到了
未解决的标识符“setTemplate”的使用
我不明白为什么会出现这种情况,如何访问setTemplate函数。
有谁能告诉我为什么我会收到错误消息以及我做错了什么吗?