[解決済み] Argument passed to call that takes no arguments "エラーを修正するには?
2022-02-03 06:22:59
質問
を作ろうとしています。
チックタックトー
ゲームです。私はこれを使おうとしています
checkForWinner
関数がありますが、エラーが出続けます。何か手助けがあれば、とても助かります。
以下は私のコードです。
class ViewController: UIViewController {
@IBOutlet weak var CurrentLetterLabel: UILabel!
@IBOutlet weak var label1: UILabel!
@IBOutlet weak var label2: UILabel!
@IBOutlet weak var label3: UILabel!
@IBOutlet weak var label4: UILabel!
@IBOutlet weak var label5: UILabel!
@IBOutlet weak var label6: UILabel!
@IBOutlet weak var label7: UILabel!
@IBOutlet weak var label8: UILabel!
@IBOutlet weak var label9: UILabel!
@IBOutlet weak var label10: UILabel!
@IBOutlet weak var label11: UILabel!
let letter = "XOXOXOXOXO"
var moveCounter = 0
var currentLetter:Character!
var labelArray = [UILabel]()
override func viewDidLoad() {
super.viewDidLoad()
labelArray.append(label1)
labelArray.append(label2)
labelArray.append(label3)
labelArray.append(label4)
labelArray.append(label5)
labelArray.append(label6)
labelArray.append(label7)
labelArray.append(label8)
labelArray.append(label9)
labelArray.append(label10)
labelArray.append(label11)
getCharacter()
}
func getCharacter(){
let myRange = Range<String.Index>(start: letter.startIndex.advancedBy(moveCounter), end: letter.startIndex.advancedBy(moveCounter + 1))
CurrentLetterLabel.text = letter.substringWithRange(myRange)
currentLetter = Character(letter.substringWithRange(myRange))
}
func clearLabels(Action:UIAlertAction){
label1.text = ""
label2.text = ""
label3.text = ""
label4.text = ""
label5.text = ""
label6.text = ""
label7.text = ""
label9.text = ""
label10.text = ""
label11.text = ""
}
func presentWinningAlert(){
moveCounter = 0
let alert = UIAlertController(title: "", message: "byr", preferredStyle: UIAlertControllerStyle.Alert)
let okAction = UIAlertAction(title: "Ok", style: UIAlertActionStyle.Default, handler: clearLabels)
alert.addAction(okAction)
presentViewController(alert, animated: true, completion: nil)
}
@IBAction func onTapped(sender: UITapGestureRecognizer) {
print("Here")
let selectedPoint = sender.locationInView(self.view)
print(selectedPoint)
for label in labelArray{
if CGRectContainsPoint(label1.frame, selectedPoint){
label1.text = String(currentLetter)
}
if CGRectContainsPoint(label2.frame, selectedPoint){
label2.text = String(currentLetter)
}
if CGRectContainsPoint(label3.frame, selectedPoint){
label3.text = String(currentLetter)
}
if CGRectContainsPoint(label4.frame, selectedPoint){
label4.text = String(currentLetter)
}
if CGRectContainsPoint(label5.frame, selectedPoint){
label5.text = String(currentLetter)
}
if CGRectContainsPoint(label6.frame, selectedPoint){
label6.text = String(currentLetter)
}
if CGRectContainsPoint(label7.frame, selectedPoint){
label7.text = String(currentLetter)
}
if CGRectContainsPoint(label8.frame, selectedPoint){
label8.text = String(currentLetter)
}
if CGRectContainsPoint(label9.frame, selectedPoint){
label9.text = String(currentLetter)
}
if CGRectContainsPoint(label10.frame, selectedPoint){
label10.text = String(currentLetter)
}
}
moveCounter++
if moveCounter == 9{
presentWinningAlert()
}
getCharacter()
}
func checkForWinner(){
if label1.text == label2.text && label2.text == label3.text && label3.text != "" {
presentWinningAlert("\(label3.text!)")
}
else if label4.text == label5.text && label5.text == label6.text && label6.text != "" {
presentWinningAlert("\(label6.text!)")
}
else if label7.text == label8.text && label8.text == label9.text && label9.text != "" {
presentWinningAlert("\(label9.text!)")
}
else if label1.text == label4.text && label4.text == label7.text && label7.text != "" {
presentWinningAlert("\(label7.text!)")
}
else if label2.text == label5.text && label5.text == label8.text && label8.text != "" {
presentWinningAlert("\(label8.text!)")
}
else if label3.text == label6.text && label6.text == label9.text && label9.text != "" {
presentWinningAlert("\(label9.text!)")
}
else if label1.text == label5.text && label5.text == label9.text && label9.text != "" {
presentWinningAlert("\(label9.text!)")
}
else if label3.text == label5.text && label5.text == label7.text && label7.text != "" {
presentWinningAlert("\(label7.text!)")
}
if moveCounter == 9
{
presentWinningAlert("No One")
}
}
}
解決方法は?
文字列パラメータを指定して関数を呼び出していますが、関数が文字列パラメータを受け取りません。 どちらか一方の呼び出しが
presentWinningAlert()
引数を渡さない場合、この関数は次のように修正されます。
func presentWinningAlert(title: String){
moveCounter = 0
let alert = UIAlertController(title: title, message: "byr", preferredStyle: UIAlertControllerStyle.Alert)
関連
-
[解決済み】Xcode - 'NSUnknownKeyException', reason: ... this class is not key value coding-compliant for the key X" エラーの修正方法とは?
-
[解決済み】iOS 9.0より前のUIStackView
-
[解決済み] Xcode コマンド /usr/bin/codesign は終了コード 1 で失敗しました : errSecInternalComponent
-
[解決済み] iOS Development 証明書が失効されました
-
[解決済み] iOS HTTP GET リクエストを実行できません -Error Domain=NSURLErrorDomain Code=-1012
-
[解決済み] NSIntegerからNSStringデータ型に変換するにはどうすればよいですか?
-
[解決済み] Xcodeで実行ファイルが無効なエンタイトルメントで署名されてしまう
-
[解決済み] iOS 9 : ユニバーサルアプリの警告「アプリがフルスクリーンを必要としない限り、すべてのインターフェイスの向きをサポートする必要があります」。
-
[解決済み] SwiftでUIColor patternImageを使用して画像を中心からタイル状に配置する方法
-
[解決済み] SwiftからObjective-Cのコードを呼び出すにはどうしたらいいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】arm64アーキテクチャの未定義シンボルについて
-
[解決済み] Xcodeエラー "Could not find Developer Disk Image" が発生する。
-
[解決済み] EXC_CORPSE_NOTIFY シンボルのクラッシュが発生しました、追跡するには?
-
[解決済み] swiftで「floor」が使用できない
-
[解決済み] SwiftUI vs Interface Builderとストーリーボード【非公開
-
[解決済み] Swiftを使って音を鳴らすには?
-
[解決済み] このアクションは完了できませんでした。再試行 (-22421)
-
[解決済み] iOS 9 : ユニバーサルアプリの警告「アプリがフルスクリーンを必要としない限り、すべてのインターフェイスの向きをサポートする必要があります」。
-
[解決済み] Stringをformatで作成するには?
-
[解決済み] React native - connection has no connection handler エラーの意味?