我刚刚开始为iOS创建应用程序,我仍然试图掌握一些基本属性。
我有一个我称之为GetData的类,它从我的Web服务器收集数据。
我在我的应用程序中使用普通的ViewController和TableViewController,但如果我像这样指定GetData:
@interface GetData: UITableViewController<...>
我不能将GetData用于我的ViewController,反之亦然。
如何解决此问题?
答案 0 :(得分:0)
您不能也不应该按照您展示的方式对其进行子类化。从远程服务器获取数据不属于控制器。你应该把它移到一个单独的类。我认为this article可能会帮助你清楚思考。
答案 1 :(得分:0)
使用GetData作为UIViewController的子类,在其中添加表视图,并使用GetData作为TableViewDatasource和TableViewDelegate
但正如Holko指出的那样,你不应该使用相同的类从服务器获取数据,将代码划分为模型,视图和控制器,编写一个自定义类来执行从服务器获取数据的任务。并在视图控制器中使用该类。
如果您使用相同的类来执行网络任务和管理UI,则可能会导致无法响应的用户界面,这是糟糕的用户体验。