swift - Swift 错误:执行被中断原因:EXC_BREAKPOINT
问题描述
我重命名了一个文件。我的代码中没有出现错误,但尚未收到此消息。请帮忙!给出错误(不知道为什么堆栈要求我提供更多信息,但我已经尝试了所有方法来解决问题,例如,DerivedData,制作新的游乐场等)(不幸的是,我无法在此处输入我的整个代码,非常感谢帮助,因为我对 Swift 还比较陌生,我什至不知道 EXC_BREAKPROINT(code=1) 错误是什么,尽管谷歌搜索解决方案。)
受影响的代码:
让 intro = IntroViewController()
import Foundation
import PlaygroundSupport
import UIKit
public class IntroViewController: UIViewController {
func onMain(_ block: @escaping () -> Void) {
DispatchQueue.main.async(execute: block)
}
var previousBtn: UIButton!
var nextBtn: UIButton!
var pageLabel: UILabel!
var pages = [UIView]()
var pageNum = 0
let slide = UIImageView(frame: CGRect(x: 40, y: 350, width: 350, height: 250))
let slide2 = UIImageView(frame: CGRect(x: 40, y: 310, width: 350, height: 250))
var secondView: UIView = {
let view = UIView(frame: CGRect(x: 20, y: 20, width: 410, height: 600))
let headerLabel = UILabel(frame: CGRect(x: 40, y: 50, width: 300, height: 100))
headerLabel.font = UIFont.systemFont(ofSize: 30, weight: .bold)
headerLabel.textColor = Colors.Fonts.blackDefault
headerLabel.text = "So...what is Mental health about? "
headerLabel.numberOfLines = 2
let descriptionLabel = UILabel(frame: CGRect(x: 40, y: 150, width: 300, height: 120))
descriptionLabel.font = UIFont.systemFont(ofSize: 18, weight: .medium)
descriptionLabel.textColor = Colors.Fonts.blackDefault
descriptionLabel.text = """
Mental health consists of...
- Physical well-being ️
- Emotional well-being
- Psychological well-being
And many more!
"""
descriptionLabel.numberOfLines = 7
let description2Label = UILabel(frame: CGRect(x: 40, y: 250, width: 350, height: 130))
description2Label.font = UIFont.systemFont(ofSize: 17, weight: .medium)
description2Label.textColor = Colors.Fonts.blackDefault
description2Label.text = "It affects how we think, act, handle stress and make choices."
description2Label.numberOfLines = 0
let img = UIImageView(frame: CGRect(x: 40, y: 400, width: 300, height: 150))
img.image = #imageLiteral(resourceName: "graph1.jpg")
view.addSubview(headerLabel)
view.addSubview(descriptionLabel)
view.addSubview(description2Label)
view.addSubview(img)
let subviews = view.subviews
for view in subviews {
view.isHidden = true
}
return view
}()
var thirdView: UIView = {
let view = UIView(frame: CGRect(x: 20, y: 20, width: 410, height: 600))
let headerLabel = UILabel(frame: CGRect(x: 40, y: 10, width: 300, height: 100))
headerLabel.font = UIFont.systemFont(ofSize: 30, weight: .bold)
headerLabel.textColor = Colors.Fonts.blackDefault
headerLabel.text = "How does it affects people? "
headerLabel.numberOfLines = 2
let directedGraph = UILabel(frame: CGRect(x: 40, y: 100, width: 350, height: 50))
directedGraph.font = UIFont.systemFont(ofSize: 20, weight: .semibold)
directedGraph.textColor = Colors.Fonts.blackDefault
directedGraph.text = "Mental Health affects people from all ages. From young till old "
directedGraph.numberOfLines = 5
let directedDescription = UILabel(frame: CGRect(x: 40, y: 150, width: 350, height: 50))
directedDescription.font = UIFont.systemFont(ofSize: 15, weight: .medium)
directedDescription.textColor = Colors.Fonts.blackDefault
directedDescription.text = "Positive and Negative mindset could affect mental health in many ways!"
directedDescription.numberOfLines = 10
let img11 = UIImageView(frame: CGRect(x: 50, y: 200, width: 350, height: 150))
img11.image = #imageLiteral(resourceName: "img1.1.png")
let weightedGraph = UILabel(frame: CGRect(x: 40, y: 350, width: 350, height: 50))
weightedGraph.font = UIFont.systemFont(ofSize: 20, weight: .semibold)
weightedGraph.textColor = Colors.Fonts.blackDefault
weightedGraph.text = "Stats: Suicide rates in Asia (Teenage)"
weightedGraph.numberOfLines = 2
let weightedDescription = UILabel(frame: CGRect(x: 40, y: 400, width: 350, height: 50))
weightedDescription.font = UIFont.systemFont(ofSize: 15, weight: .medium)
weightedDescription.textColor = Colors.Fonts.blackDefault
weightedDescription.text = "the attached picture shown below is a chart that shows teen deaths caused by suicide in 2016."
// credits WHO
weightedDescription.numberOfLines = 6
let img2 = UIImageView(frame: CGRect(x: 80, y: 450, width: 300, height: 200))
img2.image = #imageLiteral(resourceName: "pic2.png")
view.addSubview(headerLabel)
view.addSubview(directedGraph)
view.addSubview(directedDescription)
view.addSubview(weightedGraph)
view.addSubview(weightedDescription)
view.addSubview(img2)
view.addSubview(img11)
let subviews = view.subviews
for view in subviews {
view.isHidden = true
}
return view
}()
var fourthView: UIView = {
let view = UIView(frame: CGRect(x: 20, y: 20, width: 410, height: 600))
let headerLabel = UILabel(frame: CGRect(x: 40, y: 20, width: 300, height: 100))
headerLabel.font = UIFont.systemFont(ofSize: 30, weight: .bold)
headerLabel.textColor = Colors.Fonts.blackDefault
headerLabel.text = "How can you your mental health?"
headerLabel.numberOfLines = 2
let descriptionLabel = UILabel(frame: CGRect(x: 40, y: 100, width: 300, height: 150))
descriptionLabel.font = UIFont.systemFont(ofSize: 15, weight: .medium)
descriptionLabel.textColor = Colors.Fonts.blackDefault
descriptionLabel.text = "There are many ways to improve your mental health! Such as exercising , playing your favorite sport ️. But most importantly, eating well and getting adequate sleep is very important as having enough sleep can lower the risk of mental health problems"
descriptionLabel.numberOfLines = 0
let img = UIImageView(frame: CGRect(x: 5, y: 250, width: 400, height: 250))
img.image = #imageLiteral(resourceName: "manybrainslawls.png")
let explain = UILabel(frame: CGRect(x: 40, y: 500, width: 300, height: 100))
explain.font = UIFont.systemFont(ofSize: 15, weight: .medium)
explain.textColor = Colors.Fonts.blackAmount
explain.textAlignment = .center
explain.text = "Continuing on "
explain.numberOfLines = 0
view.addSubview(headerLabel)
view.addSubview(descriptionLabel)
view.addSubview(img)
view.addSubview(explain)
let subviews = view.subviews
for view in subviews {
view.isHidden = true
}
return view
}()
var fifthView: UIView = {
let view = UIView(frame: CGRect(x: 20, y: 20, width: 410, height: 600))
let headerLabel = UILabel(frame: CGRect(x: 40, y: 20, width: 300, height: 100))
headerLabel.font = UIFont.systemFont(ofSize: 30, weight: .bold)
headerLabel.textColor = Colors.Fonts.blackDefault
headerLabel.text = "Part 2 !"
headerLabel.numberOfLines = 1
let explain = UILabel(frame: CGRect(x: 40, y: 100, width: 300, height: 100))
explain.font = UIFont.systemFont(ofSize: 20, weight: .medium)
explain.textColor = Colors.Fonts.blackDefault
explain.text = "Besides from doing your favorite activities...here's what you can do to relieve stress & anxiety !"
explain.numberOfLines = 0
let home = UILabel(frame: CGRect(x: 40, y: 210, width: 300, height: 50))
home.font = UIFont.systemFont(ofSize: 20, weight: .semibold)
home.textColor = Colors.Fonts.blackDefault
home.text = "Be positive! Nothing is impossible! "
home.numberOfLines = 2
let access = UILabel(frame: CGRect(x: 40, y: 270, width: 300, height: 50))
access.font = UIFont.systemFont(ofSize: 20, weight: .semibold)
access.textColor = Colors.Fonts.blackDefault
access.text = "Get a diary! "
access.numberOfLines = 1
let friends = UILabel(frame: CGRect(x: 40, y: 310, width: 300, height: 50))
friends.font = UIFont.systemFont(ofSize: 20, weight: .semibold)
friends.textColor = Colors.Fonts.blackDefault
friends.text = "MediTatE! "
friends.numberOfLines = 1
let plant = UILabel(frame: CGRect(x: 40, y: 350, width: 300, height: 50))
plant.font = UIFont.systemFont(ofSize: 20, weight: .semibold)
plant.textColor = Colors.Fonts.blackDefault
plant.text = "Talk to a friend! "
plant.numberOfLines = 1
let approaches = UILabel(frame: CGRect(x: 40, y: 400, width: 300, height: 100))
approaches.font = UIFont.systemFont(ofSize: 15, weight: .medium)
approaches.textColor = Colors.Fonts.blackAmount
approaches.text = "Continuing on..."
approaches.numberOfLines = 0
view.addSubview(headerLabel)
view.addSubview(explain)
view.addSubview(home)
view.addSubview(access)
view.addSubview(friends)
view.addSubview(plant)
view.addSubview(approaches)
let subviews = view.subviews
for view in subviews {
view.isHidden = true
}
return view
}()
var sixthView: UIView = {
let view = UIView(frame: CGRect(x: 20, y: 20, width: 410, height: 600))
let headerLabel = UILabel(frame: CGRect(x: 40, y: 20, width: 320, height: 100))
headerLabel.font = UIFont.systemFont(ofSize: 36, weight: .bold)
headerLabel.textColor = Colors.Fonts.blackDefault
headerLabel.text = "undone"
headerLabel.numberOfLines = 1
let history = UILabel(frame: CGRect(x: 40, y: 100, width: 320, height: 100))
history.font = UIFont.systemFont(ofSize: 20, weight: .medium)
history.textColor = Colors.Fonts.blackDefault
history.text = "-"
history.numberOfLines = 0
let explain = UILabel(frame: CGRect(x: 40, y: 220, width: 320, height: 100))
explain.font = UIFont.systemFont(ofSize: 20, weight: .medium)
explain.textColor = Colors.Fonts.blackDefault
explain.text = "-"
explain.numberOfLines = 0
let img3 = UIImageView(frame: CGRect(x: 40, y: 350, width: 350, height: 250))
img3.image = #imageLiteral(resourceName: "img3.jpeg")
view.addSubview(headerLabel)
view.addSubview(history)
view.addSubview(explain)
view.addSubview(img3)
let subviews = view.subviews
for view in subviews {
view.isHidden = true
}
return view
}()
var seventhView: UIView = {
let view = UIView(frame: CGRect(x: 20, y: 20, width: 410, height: 600))
let headerLabel = UILabel(frame: CGRect(x: 40, y: 20, width: 350, height: 100))
headerLabel.font = UIFont.systemFont(ofSize: 30, weight: .bold)
headerLabel.textColor = Colors.Fonts.blackDefault
headerLabel.text = "Stress management tips! "
headerLabel.numberOfLines = 1
let history = UILabel(frame: CGRect(x: 40, y: 100, width: 310, height: 180))
history.font = UIFont.systemFont(ofSize: 15, weight: .medium)
history.textColor = Colors.Fonts.blackDefault
history.text =
"""
here are 5 tips that could help you relieve stress in tough situations (eg. Examinations, Presentations, ect)
1. Before the examintion/presentation, take a deeeeep breath! (inhale & exhale )
2.
4.
5.
"""
history.numberOfLines = 0
let slide = UIImageView(frame: CGRect(x: 40, y: 310, width: 350, height: 250))
slide.image = #imageLiteral(resourceName: "graph6_0.png")
view.addSubview(headerLabel)
view.addSubview(history)
view.addSubview(slide)
let subviews = view.subviews
for view in subviews {
view.isHidden = true
}
return view
}()
var eigthView: UIView = {
let view = UIView(frame: CGRect(x: 20, y: 20, width: 410, height: 600))
let headerLabel = UILabel(frame: CGRect(x: 40, y: 20, width: 350, height: 100))
headerLabel.font = UIFont.systemFont(ofSize: 36, weight: .bold)
headerLabel.textColor = Colors.Fonts.blackDefault
headerLabel.text = "Conclusion "
headerLabel.numberOfLines = 1
let explore = UILabel(frame: CGRect(x: 40, y: 100, width: 350, height: 150))
explore.font = UIFont.systemFont(ofSize: 20, weight: .semibold)
explore.textColor = Colors.Fonts.blackDefault
explore.text = "It is totally normal for us humans to feel upset, angry and dissapointed at ourselves"
explore.numberOfLines = 3
let run = UILabel(frame: CGRect(x: 40, y: 200, width: 350, height: 150))
run.font = UIFont.systemFont(ofSize: 20, weight: .semibold)
run.textColor = Colors.Fonts.blackDefault
run.text = "No matter what, do your best and have a lil faith in ourselves! Thanks for reading! "
run.numberOfLines = 3
view.addSubview(headerLabel)
view.addSubview(explore)
view.addSubview(run)
let subviews = view.subviews
for view in subviews {
view.isHidden = true
}
return view
}()
var firstView: UIView = {
let view = UIView(frame: CGRect(x: 20, y: 20, width: 410, height: 600))
let headerLabel = UILabel(frame: CGRect(x: 40, y: 50, width: 300, height: 100))
headerLabel.font = UIFont.systemFont(ofSize: 30, weight: .bold)
headerLabel.textColor = Colors.Fonts.blackDefault
headerLabel.text = "What is Mental Health about? "
headerLabel.numberOfLines = 2
let basicLabel = UILabel(frame: CGRect(x: 40, y: 250, width: 350, height: 40))
basicLabel.font = UIFont.systemFont(ofSize: 20, weight: .semibold)
basicLabel.textColor = Colors.Fonts.blackDefault
basicLabel.text = "How does it affect people ?"
basicLabel.numberOfLines = 2
let mw2Label = UILabel(frame: CGRect(x: 40, y: 300, width: 350, height: 40))
mw2Label.font = UIFont.systemFont(ofSize: 20, weight: .semibold)
mw2Label.textColor = Colors.Fonts.blackDefault
mw2Label.text = "How can you your mental health?"
mw2Label.numberOfLines = 2
let mw3Label = UILabel(frame: CGRect(x: 40, y: 350, width: 350, height: 40))
mw3Label.font = UIFont.systemFont(ofSize: 20, weight: .semibold)
mw3Label.textColor = Colors.Fonts.blackDefault
mw3Label.text = "Stress management tips! "
mw3Label.numberOfLines = 2
let endLabel = UILabel(frame: CGRect(x: 40, y: 400, width: 300, height: 40))
endLabel.font = UIFont.systemFont(ofSize: 25, weight: .semibold)
endLabel.textColor = Colors.Fonts.blackDefault
endLabel.text = "Conclusion "
view.addSubview(headerLabel)
view.addSubview(basicLabel)
view.addSubview(mw2Label)
view.addSubview(mw3Label)
view.addSubview(endLabel)
return view
}()
func slideShow2() {
var num = 0
while runSlideShow2, isAnimating {
onMain {
self.slide2.removeFromSuperview()
self.pages[6].addSubview(self.slide2)
}
num = (num + 1) % 4
usleep(250 * 1_000)
if !(runSlideShow2 && isAnimating) {
break
}
usleep(250 * 1_000)
if !(runSlideShow2 && isAnimating) {
break
}
usleep(250 * 1_000)
if !(runSlideShow2 && isAnimating) {
break
}
usleep(250 * 1_000)
}
self.slide2.removeFromSuperview()
}
func slideShow() {
var num = 0
while runSlideShow, isAnimating {
onMain {
self.slide.removeFromSuperview()
self.pages[5].addSubview(self.slide)
}
num = (num + 1) % 6
usleep(250 * 1_000)
if !(runSlideShow && isAnimating) {
break
}
usleep(250 * 1_000)
if !(runSlideShow && isAnimating) {
break
}
usleep(250 * 1_000)
if !(runSlideShow && isAnimating) {
break
}
usleep(250 * 1_000)
}
self.slide.removeFromSuperview()
}
let myqueue = DispatchQueue(label: "myQQ", attributes: [])
var isAnimating = false
var runSlideShow = false
var runSlideShow2 = false
@objc func nextTapped() {
pageNum += 1
if isAnimating {
isAnimating = false
}
onMain {
if self.pageNum == 7 {
self.nextBtn.isHidden = true
}
if self.pageNum == 1 {
self.previousBtn.isHidden = false
}
if self.pageNum == 5 {
self.runSlideShow = true
} else {
self.runSlideShow = false
}
if self.pageNum == 6 {
self.runSlideShow2 = true
} else {
self.runSlideShow2 = false
}
self.pageLabel.text = "Page \(self.pageNum + 1)"
self.pages[self.pageNum - 1].removeFromSuperview()
self.view.addSubview(self.pages[self.pageNum])
}
let prevSubs = pages[pageNum - 1].subviews
for view in prevSubs {
view.isHidden = true
}
let subviews = pages[pageNum].subviews
myqueue.async {
self.isAnimating = true
for view in subviews where self.isAnimating {
self.onMain {
UIView.transition(with: view, duration: 0.3, options: .transitionCrossDissolve, animations: {
view.isHidden = false
})
}
if !self.isAnimating {
break
}
usleep(200 * 1_000)
}
if self.pageNum == 5 {
self.slideShow()
}
if self.pageNum == 6 {
self.slideShow2()
}
self.isAnimating = false
}
}
@objc func previousTapped() {
pageNum -= 1
if isAnimating {
isAnimating = false
}
onMain {
if self.pageNum == 6 {
self.nextBtn.isHidden = false
}
if self.pageNum == 0 {
self.previousBtn.isHidden = true
}
if self.pageNum == 5 {
self.runSlideShow = true
} else {
self.runSlideShow = false
}
if self.pageNum == 6 {
self.runSlideShow2 = true
} else {
self.runSlideShow2 = false
}
self.pageLabel.text = "Page \(self.pageNum + 1)"
self.pages[self.pageNum + 1].removeFromSuperview()
self.view.addSubview(self.pages[self.pageNum])
}
let prevSubs = pages[pageNum + 1].subviews
for view in prevSubs {
view.isHidden = true
}
let subviews = pages[pageNum].subviews
myqueue.async {
self.isAnimating = true
for view in subviews where self.isAnimating {
self.onMain {
UIView.transition(with: view, duration: 0.3, options: .transitionCrossDissolve, animations: {
view.isHidden = false
})
}
if !self.isAnimating {
break
}
usleep(200 * 1_000)
}
if self.pageNum == 5 {
self.slideShow()
}
if self.pageNum == 6 {
self.slideShow2()
}
self.isAnimating = false
}
}
public override func loadView() {
let view = UIView()
view.backgroundColor = .white
view.bounds.size.height = 770
view.bounds.size.width = 450
self.view = view
}
public override func viewDidLoad() {
super.viewDidLoad()
previousBtn = UIButton(frame: CGRect(x: 20, y: 680, width: 100, height: 30))
previousBtn.setImage(#imageLiteral(resourceName: "arrow_left.png"), for: .normal)
previousBtn.imageView?.contentMode = UIView.ContentMode.scaleAspectFit
previousBtn.addTarget(self, action: #selector(previousTapped), for: .touchUpInside)
previousBtn.isHidden = true
nextBtn = UIButton(frame: CGRect(x: 360, y: 680, width: 80, height: 30))
nextBtn.setImage(#imageLiteral(resourceName: "arrow_right.png"), for: .normal)
nextBtn.imageView?.contentMode = UIView.ContentMode.scaleAspectFit
nextBtn.addTarget(self, action: #selector(nextTapped), for: .touchUpInside)
pageLabel = UILabel(frame: CGRect(x: 200, y: 680, width: 100, height: 30))
pageLabel.text = "Page \(pageNum + 1)"
pages = [firstView, secondView, thirdView, fourthView, fifthView, sixthView, seventhView, eigthView]
pageLabel.font = UIFont.systemFont(ofSize: 18, weight: .medium)
view.addSubview(pages[0])
view.addSubview(pageLabel)
view.addSubview(previousBtn)
view.addSubview(nextBtn)
}
}
解决方案
可以有两种方法来解决这个问题:重建你所有的行快捷方式来清理是这个:shift+command+K
正如您所说,您重命名了文件。您可以做的其他事情是将所有代码复制到具有您要求的名称的新文件中。如果您的代码很好,这应该可以工作,否则请分享代码。
推荐阅读
- google-cloud-platform - 如何使用 stackdriver 从对话流中检索对话数据?
- laravel - 示例 laravel 项目 error500
- ruby-on-rails - Letter_opener 不再起作用的原因是什么?
- spring - 将石英与弹簧调度程序一起使用时未创建 Bean 引用 - 作业实例化失败
- python - wxPython - 如何“突出显示”一个 TextCtrl?
- string - 如何从文本文件中读取文本而不检索“ß”或“ä”等字符?
- c# - http 不使用 IIS 10 中的整个 URL 的 Url Rewrite 重定向到 https(包含参数的 URL)
- c# - 如何使用 RestSharp 发送带有动态属性的 JSON?
- python - 在字符串中转义 \u
- java - Android UDP Socket IOException: sendto failed: EPERM (Operation not allowed)