iOS: can not create custom view on UITableViewController

前端 未结 2 1065
耶瑟儿~
耶瑟儿~ 2021-01-28 17:01

What am I doing?
I am learning iOS by building an app. My requirement shows some transactions on UITableViewController

I

相关标签:
2条回答
  • 2021-01-28 17:58

    Use a UIViewController rather than a UITableViewController

    I recommend you don't use a UITableViewController as there's little advantage as far as I can see, whilst custom views like you're looking for are unnecessarily difficult.

    Use a UIViewController and pull a UITableView object (Within the interface builder) on to that view. You can size and position it anywhere you like.

    Remember to include the delegates within the header file, like below, and to connect the UITableView object delegate to the the viewController.

    @interface ViewController: UIViewController<UITableViewDelegate, UITableViewDatasource>
    

    Screenshot below of a UIViewController within the interface builder and I've added a UITableview object (which is greyed out here) and added a UIView at the top (coloured brown so you can see it clearly).

    This of course is just an example, but hope it helps you get the idea.

    enter image description here

    Although in the above screen shot I'm using storyboard, though you can do this just the same with a Xib too.

    I hope this helps.

    0 讨论(0)
  • 2021-01-28 18:01

    The view you've added the labels to is your view controller's main view. You will need to drag a View from your object library (bottom right menu) and add those labels in it. Then link the added view to your ViewController with an IBOutlet. After that you can set your tableView's header to be the added view:

    self.tableView.tableHeaderView = headerView;
    

    EDIT: If you want to do everything in code. Create the custom header view and drag it above your UITableView: https://stackoverflow.com/a/8053361/2604030

    0 讨论(0)
提交回复
热议问题