如何使用PFQueryViewController作为UITableViewController的子视图?

时间:2014-03-25 16:29:54

标签: ios objective-c parsing uitableview chat

我正在尝试使用Parse构建群发消息应用程序。我只想使用故事板,因为我是iOS新手。

  • 第一个屏幕是一个带有组列表的UITableViewController。
  • 第二个屏幕是一个PFQueryTableViewController,它继承自UITableViewController,包含该组的消息列表。

我想在PFQueryViewController中添加一个聊天框(UITextField),但我似乎无法做到这一点,因为它是一个UITableViewController。

从我能说的是为了添加聊天框我需要使用UIViewController并手动添加表视图。然后调整表格视图的大小以允许底部的聊天框。

问题是PFQueryViewController继承自UITableViewController而不是UITableView。

我使用它将选定的组PFObject传递给新的PFQueryViewController。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
    [self performSegueWithIdentifier:@"detail" sender:nil];

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
    if([[segue identifier] isEqualToString:@"detail"])
    {
        NSIndexPath *ip = [self.tableView indexPathForSelectedRow];
        PFObject *passObj = [self.objects objectAtIndex:ip.row];
        PFQueryTableViewController *messageDetail=[segue destinationViewController];
        [messageDetail setReceiveObj:passObj];
        messageDetail.hidesBottomBarWhenPushed = YES; //Hide Tab Bar
    }

如何使用PFQueryViewController作为UIViewController的子视图并将PFObject传递给该控制器?

*我没有足够的图像声誉

1 个答案:

答案 0 :(得分:3)

我不熟悉Parse框架,但您应该能够使用View Controller Containment来实现这一目标。

Here is a nice guide to check out.

以下是将视图控制器的视图添加为另一个视图控制器中的子视图的相关部分:

// put this in viewDidLoad
[self addChildViewController:_pfQueryController];               //  1
[self.view addSubview:_pfQueryController.view];                 //  2
[_pfQueryController didMoveToParentViewController:self];        //  3