gpt4 book ai didi

ios - Swift - 预期声明在 'View Controller' 的声明中

转载 作者:行者123 更新时间:2023-11-28 16:01:49 25 4
gpt4 key购买 nike

注意:我是自学的。最近几天我一直在使用 Swift。我有一个可以教我基础知识的应用程序。

好的,所以我一直在阅读,我发现了这个错误的 2 个可能原因。1.是我没有方法/函数中的代码吗2.我是不是少了一个

所以它只是突出了:

class ViewController: UIViewController, UIPickerViewDelegate

它还在 ViewController 中的 V 下方放置了一个红色小箭头。然后错误状态:

In Declaration of 'View Controller'

我不确定还有什么可能。唯一不属于函数的代码是数组声明。我把它们放在 @IBOutlets 之后和 override func 之前。其他一切都在覆盖函数或函数中。

import UIKit

class ViewController: UIViewController, UIPickerViewDelegate
{
// connects the text fields
@IBOutlet var raceViewer: UITextField!
@IBOutlet var strStat: UITextField!
@IBOutlet var dexStat: UITextField!
@IBOutlet var conStat: UITextField!
@IBOutlet var intStat: UITextField!
@IBOutlet var wisStat: UITextField!
@IBOutlet var chrStat: UITextField!

// connects stats for human, half-elf, half-orc
@IBOutlet var singleStat: UITextField!

// connects the picker views
@IBOutlet var racePicker: UIPickerView!
@IBOutlet var statPicker: UIPickerView!
@IBOutlet var singleStatPicker: UIPickerView!

// connects the labels for the race modifications
@IBOutlet var raceStr: UILabel!
@IBOutlet var raceDex: UILabel!
@IBOutlet var raceCon: UILabel!
@IBOutlet var raceInt: UILabel!
@IBOutlet var raceWis: UILabel!
@IBOutlet var raceChr: UILabel!

// connects the labels for final modification


// connects the labels for mod



// defines the arrays
var races = ["","Dwarf","Elf","Gnome","Half-Elf","Half-Orc","Halfling","Human","Ifrit","Oread","Sylph","Tengu","Undine","Kitsune","Nagaji","Wayang"]
var abilStats = ["","7","8","9","10","11","12","13","14","15","16","17","18"]
var single = ["Strength","Dexterity","Constitution","Intelligence","Wisdom","Charisma"]

override func viewDidLoad()
{
super.viewDidLoad()
racePicker = UIPickerView()
statPicker = UIPickerView()
singleStatPicker = UIPickerView()

racePicker.delegate = self
statPicker.delegate = self
singleStatPicker.delegate = self

self.raceViewer.inputView = self.racePicker
self.singleStat.inputView = self.singleStatPicker
self.strStat.inputView = self.statPicker
self.dexStat.inputView = self.statPicker
self.conStat.inputView = self.statPicker
self.intStat.inputView = self.statPicker
self.wisStat.inputView = self.statPicker
self.chrStat.inputView = self.statPicker

// set the tags for the pickerview
racePicker.tag = 0
statPicker.tag = 1
singleStatPicker.tag = 2

// Do any additional setup after loading the view, typically from a nib.
//let racePickerView = UIPickerView()
//racePickerView.delegate = self
//raceViewer.inputView = racePicker

singleStat.isHidden = true
}

override func didReceiveMemoryWarning()
{
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}


func numberOfComponentsInPickerView(_ pickerView: UIPickerView) -> Int
{
return 1
}

func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int
{
if pickerView.tag == 0
{
return races.count
}
else if pickerView.tag == 1
{
return abilStats.count
}
else if pickerView.tag == 2
{
return single.count
}
return 1
}

func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String?
{
if pickerView.tag == 0
{
return races[row]
}
else if pickerView.tag == 1
{
return abilStats[row]
}
else if pickerView.tag == 2
{
return single[row]
}

return ""
}

func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int)
{
if pickerView.tag == 0
{
raceViewer.text = races[row]

// Dwarf
if raceViewer.text == races[1]
{
// values changed
raceCon.text = "2"
raceWis.text = "2"
raceChr.text = "-2"

// values reset
raceStr.text = "0"
raceDex.text = "0"
raceInt.text = "0"

// hides the singleStat text field
singleStat.isHidden = true
}

// Elf
else if raceViewer.text == races[2]
{
// values changed
raceDex.text = "2"
raceCon.text = "-2"
raceInt.text = "2"

// values reset
raceStr.text = "0"
raceWis.text = "0"
raceChr.text = "0"

// hides the singleStat text field
singleStat.isHidden = true
}

// Gnome
else if raceViewer.text == races[3]
{
// values changed
raceStr.text = "-2"
raceCon.text = "2"
raceChr.text = "2"

// values reset
raceDex.text = "0"
raceInt.text = "0"
raceWis.text = "0"

// hides the singleStat text field
singleStat.isHidden = true
}

// Half-Elf
else if raceViewer.text == races[4]
{
// values reset
raceStr.text = "0"
raceDex.text = "0"
raceCon.text = "0"
raceInt.text = "0"
raceWis.text = "0"
raceChr.text = "0"

// shows the singleStat text field
singleStat.isHidden = false
}

// Half-Orc
else if raceViewer.text == races[5]
{
// values reset
raceStr.text = "0"
raceDex.text = "0"
raceCon.text = "0"
raceInt.text = "0"
raceWis.text = "0"
raceChr.text = "0"

// shows the singleStat text field
singleStat.isHidden = false
}

// Halfling
else if raceViewer.text == races[6]
{
// values changed
raceStr.text = "-2"
raceDex.text = "2"
raceChr.text = "2"

// values reset
raceCon.text = "0"
raceInt.text = "0"
raceWis.text = "0"

// hides the singleStat text field
singleStat.isHidden = true
}

// Human
else if raceViewer.text == races[7]
{
// values reset
raceStr.text = "0"
raceDex.text = "0"
raceCon.text = "0"
raceInt.text = "0"
raceWis.text = "0"
raceChr.text = "0"

// shows the singleStat text field
singleStat.isHidden = false
}

// Ifrit
else if raceViewer.text == races[8]
{
// values changed
raceDex.text = "2"
raceWis.text = "-2"
raceChr.text = "2"

// values reset
raceStr.text = "0"
raceCon.text = "0"
raceInt.text = "0"

// hides the singleStat text field
singleStat.isHidden = true
}

// Oread
else if raceViewer.text == races[9]
{
// values changed
raceStr.text = "2"
raceWis.text = "2"
raceChr.text = "-2"

// values reset
raceDex.text = "0"
raceCon.text = "0"
raceInt.text = "0"

// hides the singleStat text field
singleStat.isHidden = true
}

// Sylph
else if raceViewer.text == races[10]
{
// values changed
raceDex.text = "2"
raceCon.text = "-2"
raceInt.text = "2"

// values reset
raceStr.text = "0"
raceWis.text = "0"
raceChr.text = "0"

// hides the singleStat text field
singleStat.isHidden = true
}

// Tengu
else if raceViewer.text == races[11]
{
// values changed
raceStr.text = "-2"
raceDex.text = "2"
raceWis.text = "2"

// values reset
raceCon.text = "0"
raceInt.text = "0"
raceChr.text = "0"

// hides the singleStat text field
singleStat.isHidden = true
}

// Undine
else if raceViewer.text == races[12]
{
// values changed
raceStr.text = "-2"
raceDex.text = "2"
raceWis.text = "2"

// values reset
raceCon.text = "0"
raceInt.text = "0"
raceChr.text = "0"

// hides the singleStat text field
singleStat.isHidden = true
}

// Kitsune
else if raceViewer.text == races[13]
{
// values changed
raceStr.text = "-2"
raceDex.text = "2"
raceChr.text = "2"

// values reset
raceCon.text = "0"
raceInt.text = "0"
raceWis.text = "0"

// hides the singleStat text field
singleStat.isHidden = true
}

// Nagagi
else if raceViewer.text == races[14]
{
// values changed
raceStr.text = "2"
raceInt.text = "-2"
raceChr.text = "2"

// values reset
raceDex.text = "0"
raceCon.text = "0"
raceWis.text = "0"

// hides the singleStat text field
singleStat.isHidden = true
}

// Wayang
else if raceViewer.text == races[15]
{
// values changed
raceDex.text = "2"
raceInt.text = "2"
raceWis.text = "-2"

// values reset
raceStr.text = "0"
raceCon.text = "0"
raceChr.text = "0"

// hides the singleStat text field
singleStat.isHidden = true
}
}
}
}

最佳答案

我测试了您的代码,就其本身而言,它没问题。

但是,如果您制作的两个文件都使用 ViewController 类名,则会收到您提供的错误消息。

enter image description here

在 iOS 中,您不能创建两个或多个具有相同名称的对象(类、结构和枚举)以避免命名冲突。

请重命名您遇到问题的类,看看问题是否已解决。

关于ios - Swift - 预期声明在 'View Controller' 的声明中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40919790/

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