0

我正在为 ipad 开发聊天应用程序,我想知道本机消息应用程序。

所以在一个屏幕上有两个tableview,但是如何在一个控制器中正确处理两个tableview?还有那个导航栏,是单个导航栏和某种分隔符吗?任何帮助将不胜感激。谢谢

4

3 回答 3

1

Apple 使用的是UISplitViewController 。

于 2013-10-24T14:28:16.183 回答
1

有一个控件叫 UISplitViewController

您还可以在您的 UIViewController 上放置 2 个单独的 UITableView,然后在委托/数据源方法中处理它,即:

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
    {
        if(tableView == _leftTableView)
        {
             static NSString *CellIdentifier = @"Cell";
             UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

             if (cell == nil) {
                 cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
             }

             //fill cell data here

             return cell;
        }
        else if(tableView == _rightTableView)
        {
             static NSString *CellIdentifier = @"Cell";
             UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

             if (cell == nil) {
                 cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
             }    

             //fill cell data here

             return cell;
         }
         return nil;
    }
于 2013-10-24T14:28:29.513 回答
0

您的链接已损坏,因此很难确定您要做什么。

正如其他人所说,如果您正在尝试这样做,您可以将拆分视图控制器用于分层内容。我不认为 iOS 消息应用程序使用

您也可以自己管理表格视图。不要使用 UITableViewController;自己设置一个常规的 UIViewController。所有的表视图委托和数据源方法都作为第一个参数传入表视图,因此您可以根据调用您的表视图编写方法来分支。

另一种选择是使用父/子视图控制器方案并让您的主视图控制器包含 2 个不同的子 UITableViewController 对象,并为子表视图控制器设置协议以与父级对话。

我在 github 上有一个应用程序,它是使用这种技术的一个例子。在 iOS 6 或更高版本中这很容易,因为您可以使用嵌入转场。这是链接

然而,我的应用程序基于静态表视图。需要对其进行修改以处理每个表视图的单独数据源。

于 2013-10-24T14:39:50.340 回答