swift - 声明仅在文件范围内有效错误 SWIFT 应用程序项目
问题描述
我对编码应用程序非常陌生,并且一直在尝试解决问题,但我似乎无法迅速找到我的代码的答案。我想我格式错了,但不知道是什么。这是一张希望帮助您理解的图片:此图片显示了错误消息和所有代码
这是代码。在代码行出现“声明仅在文件范围内有效”的错误:
extension ViewController: UIScrollViewDelegate {
import UIKit
class ViewController: UIViewController, UIScrollViewDelegate {
@IBOutlet weak var label: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
scrollView.maximumZoomScale = 4
scrollView.minimumZoomScale = 1
scrollView.delegate = self
}
@IBAction func randomWord(_ sender: Any) {
let array = ["Dam", "Military Base", "Quarry", "Airport", "Tv Station", "Storage Town", "Superstore", "Stadium", "Lumber", "Boneyard", "Train Station", "Hospital", "Downtown", "Farmland", "Promenade East", "Promenade West", "Hills", "Park", "Port", "Prison"]
label.text = array.randomElement()
}
@IBOutlet weak var scrollView: UIScrollView!
@IBOutlet weak var mapImage: UIImageView!
extension ViewController: UIScrollViewDelegate {
func viewForZooming(in scrollView: UIScrollView) -> UIView? {
return mapImage
}
}
}
解决方案
你只需要让你的方法成为你的视图控制器的实例方法:
import UIKit
class ViewController: UIViewController, UIScrollViewDelegate {
@IBOutlet weak var label: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
scrollView.maximumZoomScale = 4
scrollView.minimumZoomScale = 1
scrollView.delegate = self
}
@IBAction func randomWord(_ sender: Any) {
let array = ["Dam", "Military Base", "Quarry", "Airport", "Tv Station", "Storage Town", "Superstore", "Stadium", "Lumber", "Boneyard", "Train Station", "Hospital", "Downtown", "Farmland", "Promenade East", "Promenade West", "Hills", "Park", "Port", "Prison"]
label.text = array.randomElement()
}
@IBOutlet weak var scrollView: UIScrollView!
@IBOutlet weak var mapImage: UIImageView!
// make viewForZooming a an instance method of ViewController
func viewForZooming(in scrollView: UIScrollView) -> UIView? {
return mapImage
}
}
推荐阅读
- python - 可发布的 Django 应用程序需要什么文件夹结构?
- validation - 如何在验证属性中访问父属性
- azure-functions - 在应用服务计划超时上运行的函数
- html - 一个输入字段上的只读和必需
- android - WebView 在小木红米 Note 4 上崩溃
- javascript - 在 Ubuntu 18.04 上安装 nodemon 时出错
- c# - C# 编组、不平衡堆栈和正确获取 PInvoke 签名
- c# - .png 和 .jpg 的 ProcessStartInfo.Verbs 只是“printto”
- xml - 如何使用 jvm-cucumber-parallel-plugin 重新运行失败的测试
- angular - Constructor里面注入装饰器有什么用