2013-01-15 39 views
2

我有一个tableview设置,其中包含一些显示在popover中的静态单元格。问题是popover总是空的,我似乎无法弄清楚为什么。我已经删除了我的tableviewcontroller中的所有数据方法,所以这不是问题。任何人都可以在下面的代码中看到任何问题,或者指出我可能会丢失的东西吗?谢谢!用Tableview和静态单元格实现的空闲popover

TableViewController代码:

@implementation ICAMDisciplineTableViewController 
- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    self.clearsSelectionOnViewWillAppear = NO; 
    self.contentSizeForViewInPopover = CGSizeMake(400.0, 400.0); 
} 

- (void)didReceiveMemoryWarning 
{ 
    [super didReceiveMemoryWarning]; 
} 

#pragma mark - Table view delegate 

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    [self.delegate disciplineTableViewController:self 
          didSelectEnumItem:indexPath.row + 1]; 
} 

@end 

代码显示酥料饼:

UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard" 
                   bundle: nil]; 

    ICAMDisciplineTableViewController *popoverContent = (ICAMDisciplineTableViewController*)[mainStoryboard 
                      instantiateViewControllerWithIdentifier: @"ICAMDisciplineTableViewController"]; 

确保:

-(void)fireDisciplinePopOver 
{ 
    ICAMDisciplineTableViewController *popoverTable = [[ICAMDisciplineTableViewController alloc] init]; 
    self.popOverController = [[UIPopoverController alloc]initWithContentViewController:popoverTable]; 
    self.popOverController.delegate = self; 
    popoverTable.delegate = self; 
    [self.popOverController presentPopoverFromRect:self.disciplineTextField.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES]; 
} 
+0

'ICAMDisciplineTableViewController'是否有.xib文件?如果是这样,你需要调用'initWithNibNamed:bundle:' – MishieMoo

+0

你确定你的UITableViewController不在UIPopover中时工作吗?首先尝试-presentModalViewController,看看这是否实际上是popover的问题。 – Kekoa

+0

它建立在Storyboard上。感谢您的回复。 – Majkeli

回答

2

在你fireDisciplinePopover这样做是为了从你的故事板让您UIViewController为您的UIViewController设置故事板ID r Storyboard--我只是将它设置为上面的视图控制器名称。

+0

这样做。谢谢!任何想法为什么不使用alloc/init显示内容?上面的代码对于用FetchedResultsController填充的UITableViewControllers非常适用。 – Majkeli

+0

@Majkeli在Storyboard中创建视图时; .h/.m文件不知道您创建的视图 - 故事板将视图连接到它的类。这就是为什么你必须从Storyboard获取UIViewController的一个实例,因为它可以为你提供视图和代码。你的弹出窗口是空白的,因为是的,你有一个你的视图控制器的有效实例,但它不知道故事板中的关联视图。希望这是有道理的 – RyanG

相关问题