Mapkit视图与tableview一起

时间:2010-11-17 08:59:39

标签: objective-c uitableview ios4 uitextfield mapkit

我是Iphone Dev的新手,似乎并不真正理解委托的事情。我们可以将mapkit视图和tableview放在一个视图中吗?

我搜索过,有人说我们不能在一个viewcontroller中使用多个委托。据我所知mapkit需要MKMapViewDelegate和tableview需要UITableViewDelegate,我到现在为止? 那是不是意味着,我们不能将mapkit和tableview放在一个视图中?

让我感到困惑的事情,我做了简单的应用程序,一起使用textview和mapkit。我只传递MKMapViewDelegate来查看控制器。但textview还要求代理人使用textFieldShouldReturn关闭键盘。所以我设法从IB文件链接委托,但没有通过UITextFieldDelegate查看控制器。它有效。 如果我们使用IB链接委托或传递委托参数来查看控制器有什么区别?

谢谢

1 个答案:

答案 0 :(得分:0)

视图控制器可以是地图视图和表视图的委托。通过实现委托协议的方法,对象变为委托简单,在这种情况下是MKMapViewDelegateUITableViewDataSource

对象可以实现任意数量的协议。您告诉编译器实例通过将协议添加到接口来​​实现协议:

@interface MyObject : NSObject <UITableViewDataSource, MKMapViewDelegate>
{
    ...

在IB和代码中设置委托之间没有明显的技术差异。我建议在IB中设置它们,因为使用IB会减少您编写的代码量,从而减少代码失败的可能性。