0
我最近已升級到iOS 6 Beta,並遇到一些問題。 (我知道這是一個測試版,但是我還沒有確信,它實際上的iOS 6有關的。)UIPopOver管理和USE_BLOCK_IN_FRAME錯誤
問題有以下參數:
- 定製
UITableViewCell
與UIButton
對象產生UIPopOver
對象,從被挖掘的UIButton
的框架呈現。 - 顯示
UIPopOver
,然後iPad旋轉。 - 旋轉動畫完成後,我的視圖關閉了
UIPopOver
,然後重新顯示UIPopOver
。
相關信息:
- 第一旋轉前進細;
UIPopOver
被解散並重新正確顯示。 - 第二輪(每次)是什麼打破了應用程序。
- 我有一個符號斷點集,但我沒有得到任何有用的信息。
- 我正在做同樣的事
UIPopOver
對象從UIBarButton
對象UIToolbar
。我在這些轉變中沒有遇到任何問題。 - 這是一個與代碼相關的新問題,它在很長的一段時間內沒有改變。
- 我收到的錯誤是:「警告:試圖創建USE_BLOCK_IN_FRAME變量與不在框架中的塊。」
下面是執行與旋轉代碼:
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation {
if ([self PopOver]) {
[[self PopOver] dismissPopoverAnimated:YES];
[self setPopOver:nil];
[self ButtonPressed:[self TouchedCell]];
}
[[self TableView1] reloadData];
[[self TableView2] reloadData];
}
- (void)ButtonPressed:(Cell *)cell {
[self setTouchedCell:cell];
NSString *nibName = @"View";
if (UI_USER_INTERFACE_IDIOM()==UIUserInterfaceIdiomPad) {
nibName = @"View-iPad";
}
ViewController *vc = [[ViewController alloc] initWithNibName:nibName
bundle:nil];
if (UI_USER_INTERFACE_IDIOM()==UIUserInterfaceIdiomPad) {
UIPopoverController *popOver = [[UIPopoverController alloc]
initWithContentViewController:vc];
[self setPopOver:popOver];
[popOver setDelegate:self];
[[self PopOver] setPopoverContentSize:CGSizeMake(320, 320)];
[popOver presentPopoverFromRect:[[cell CheckButton] frame]
inView:[cell contentView]
permittedArrowDirections:UIPopoverArrowDirectionAny
animated:YES];
} else {
// iPhone doesn't use PopOvers...
}
}
任何人都知道我下一步應該怎麼辦呢?
在重新加載表後,是否有單元格試圖顯示從屏幕移出的彈出窗口? –
我將不得不再次檢查,但我不認爲這是我所做的特定測試的情況。如果我做了一個'[tableView reloadData]',那不就是說我必須對'UITableViewCell' ***的引用可能無效嗎?我敢打賭,我試圖從一個(現在)不存在的細胞中呈現它。我會檢查,並感謝讓我想下來正確的路徑! – mbm29414
@JerryJones如果你會留下你的評論作爲答案,我會接受它。它並不是完全解決了我的問題,但它足夠接近我的正確答案(顯然,我試圖從一個已經回收的UITableViewCell中展示PopOver)。謝謝! – mbm29414