如何为表视图创建单个类并在所有其他类中继承?

时间:2022-09-25 10:32:46

I want to have table view in around 5 screens with same layout. what should be the best approach? Should i make a single class and then inherit other view controllers with that class? or make table view in each screens with separate coding?

我希望在大约5个屏幕中具有相同布局的表格视图。什么应该是最好的方法?我应该创建一个类,然后继承该类的其他视图控制器?或者使用单独的编码在每个屏幕中制作表格视图?

2 个解决方案

#1


0  

You should create a subclass of UITableViewCell and use that as your cell layout through your app.

您应该创建一个UITableViewCell的子类,并通过您的应用程序将其用作单元格布局。

If you need the UITableView to have exactly the same properties throughout, you could also create a UITableView extension like this (in Swift)

如果你需要UITableView具有完全相同的属性,你也可以像这样创建一个UITableView扩展(在Swift中)

extension UITableView {
    class func defaultTableView() -> UITableView {
        let tableView = UITableView()
        // Setup your default tableView properies here
        return tableView
    }
}

#2


0  

This depends on what is similar between your 5 forms.

这取决于您的5个表单之间的相似之处。

  1. If you have 5 different forms with the same tableview on each (and with the same data), but the other controls on forms may be different then the best approach is make one TTableView controller. Then put ViewContainer on each of 5 forms and then make embedded segue from containers to your separate TableViewController.

    如果您有5种不同的表单,每种表单具有相同的表视图(并且具有相同的数据),但表单上的其他控件可能不同,那么最好的方法是制作一个TTableView控制器。然后将ViewContainer放在5个表单中的每一个上,然后从容器中嵌入segue到单独的TableViewController。

  2. If you have 5 different forms with different tableview but this table view looks similar, the best approach is to make one UITableViewCell with its own xib and use it in all 5 TableViews (as in answer of tskippe).

    如果你有5种不同的表格和不同的tableview,但这个表视图看起来很相似,最好的方法是使用自己的xib创建一个UITableViewCell,并在所有5个TableView中使用它(如tskippe的回答)。

#1


0  

You should create a subclass of UITableViewCell and use that as your cell layout through your app.

您应该创建一个UITableViewCell的子类,并通过您的应用程序将其用作单元格布局。

If you need the UITableView to have exactly the same properties throughout, you could also create a UITableView extension like this (in Swift)

如果你需要UITableView具有完全相同的属性,你也可以像这样创建一个UITableView扩展(在Swift中)

extension UITableView {
    class func defaultTableView() -> UITableView {
        let tableView = UITableView()
        // Setup your default tableView properies here
        return tableView
    }
}

#2


0  

This depends on what is similar between your 5 forms.

这取决于您的5个表单之间的相似之处。

  1. If you have 5 different forms with the same tableview on each (and with the same data), but the other controls on forms may be different then the best approach is make one TTableView controller. Then put ViewContainer on each of 5 forms and then make embedded segue from containers to your separate TableViewController.

    如果您有5种不同的表单,每种表单具有相同的表视图(并且具有相同的数据),但表单上的其他控件可能不同,那么最好的方法是制作一个TTableView控制器。然后将ViewContainer放在5个表单中的每一个上,然后从容器中嵌入segue到单独的TableViewController。

  2. If you have 5 different forms with different tableview but this table view looks similar, the best approach is to make one UITableViewCell with its own xib and use it in all 5 TableViews (as in answer of tskippe).

    如果你有5种不同的表格和不同的tableview,但这个表视图看起来很相似,最好的方法是使用自己的xib创建一个UITableViewCell,并在所有5个TableView中使用它(如tskippe的回答)。