1. ホーム
  2. ios

[解決済み】"宣言はファイルスコープでのみ有効 "について

2022-02-06 23:17:43

質問

私はクラスと拡張子のSwiftファイルを持っています。私が別のファイルで宣言したデリゲートをクラスに追加した後、Xcodeはこのエラーを表示します。

宣言はファイルスコープでのみ有効です

を拡張子の行に追加してください。何が問題なのかわからない。

どなたか解決する方法を教えてください。

class ListViewController: UIViewController, AddItemViewControllerDelegate {...}

extension ListViewController: UITableViewDataSource{
    func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
        tableView.deselectRowAtIndexPath(indexPath, animated: true)
        performSegueWithIdentifier("ShowDetail", sender: indexPath)
    }

}

解決方法は?

エラーの原因は ... - そのエラーは、あなたの ListViewController クラスが閉じられていないため、このように拡張子が内部にネストされていると解釈されます。

class ListViewController {
    ...
    extension ListViewController {
    }
}

足りない閉じ中括弧を探せば、問題は解決するはずです。