presentPopoverFromRect导致我的应用程序冻结

时间:2012-08-07 20:24:28

标签: iphone ios uipopovercontroller

我从Button中显示一个Popover,它位于UITableView的标题中。

-(void) addButtonClicked:(id)sender{

 [addPopOverVC setPopoverContentSize:CGSizeMake(POPOVER_WIDTH, numberOfRowsInTable * addOptionsTable.rowHeight)];
 [addPopOverVC presentPopoverFromRect:[sender bounds] inView:sender 
                    permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES]; 
 addPopOverVC.passthroughViews = nil;
}

应用程序冻结在第二行(当我调用方法presentPopoverFromRect时)在调试器中没有任何警告/错误。此外,当我尝试调试它时,步骤刚刚消失在那一行,应用程序变得没有响应,好像它永远不会返回。 我之前没见过这样的行为。 addPopOverVc是一个UIPopoverViewController。所有参数的值都不是零。

1 个答案:

答案 0 :(得分:1)

1)在这种情况下,sender是触发点击事件的按钮。您不应该使用该按钮来显示弹出窗口,而是使用要显示弹出窗口的真实视图。

2)您确定addPopOverVC已初始化并正确保留吗?

欢呼声, ANKA