2011-03-25 35 views
3

我在UIPopoverController中有一個視圖控制器。當我爲屬於彈出窗口中的視圖的文本字段打開鍵盤時,視圖將調整大小以容納鍵盤。但是,當鍵盤被解散時,視圖不會回到原始大小。UIPopoverController的視圖控制器在鍵盤消失後調整大小

任何想法如何讓它調整回到它是什麼?

+0

相關問題[鍵盤辭職減少彈出高度](http://stackoverflow.com/questions/5513381/keyboard-resigning-reduces-popover-height) – AlexVogel 2011-04-04 12:45:44

回答

7

最近自己有這個問題。

我周圍的方式,它是觀察鍵盤,其中控制UIPopoverController控制器消失:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(presentSearchPopover) name:UIKeyboardDidHideNotification object:nil]; 

然後在-presentSearchPopover,再次呈現UIPopoverController(這是相當的無縫過渡):

- (void)presentSearchPopover 
{ 
    self.searchPopoverController.popoverContentSize = CGSizeMake(width, height); 

    [self.searchPopoverController presentPopoverFromRect:someRect inView:self.view permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES]; 
} 

不要忘記刪除觀察者-dealloc或類似太:

- (void)dealloc 
{ 
    [[NSNotificationCenter defaultCenter] removeObserver:self name:UIKeyboardDidHideNotification object:nil]; 

    [super dealloc]; 
} 
相關問題