无法在Xcode中为UITableViewController设置自定义类

时间:2018-02-17 22:24:29

标签: swift xcode interface-builder

Xcode不允许我将我的表视图的自定义类设置为以下类(当我在故事板上设置它时,它不会让我在下拉列表中出现任何内容)。

  

以下是我的表视图控制器的swift文件。

https://gist.github.com/JudeMolloy/139e91d8c45ebe3d6140139ffd68a339

这是我的故事板的图片: enter image description here

感谢。

2 个答案:

答案 0 :(得分:4)

检查您的班级是否至少包含以下方法:

//
//  MyCustomTableViewController.swift
//  Test Table
//
//  Created by shadowsheep on 17/02/2018.
//  Copyright © 2018 shadowsheep. All rights reserved.
//

import UIKit

class MyCustomTableViewController: UITableViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

        // Uncomment the following line to preserve selection between presentations
        // self.clearsSelectionOnViewWillAppear = false

        // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
        // self.navigationItem.rightBarButtonItem = self.editButtonItem
    }

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

    // MARK: - Table view data source

    override func numberOfSections(in tableView: UITableView) -> Int {
        // #warning Incomplete implementation, return the number of sections
        return 0
    }

    override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        // #warning Incomplete implementation, return the number of rows
        return 0
    }

}

使用这些基本存根,您可以确保能够访问UITableViewController的控制器...

修改 从提供的新信息: 您必须选择UITableView 控制器而不是UiTableView。选择后,您的UITableView 控制器 yoy将能够设置您的自定义控制器。

enter image description here

你会看到你选择了正确的类,因为Identity Inspector上提供的浅灰色默认类是 UITableViewController

您可以在下拉菜单中找到自定义控制器。

enter image description here

答案 1 :(得分:2)

在您提供的图片中,您选择了UITableView,而不是视图控制器。

您无法将UITableView的自定义类设置为视图控制器。

确保在故事板中选择视图控制器。单击视图控制器上方栏中的黄色图标。然后,您将能够设置自定义类。