一千萬個為什麽

搜索

UIStoryboardPopoverSegue在按下工具欄按鈕時關閉

First of all, I've found a similar question but it does not do the exact same thing I want: UIStoryboardPopoverSegue opening multiple windows on button touch

我有一個帶有按鈕的工具欄,它顯示了一個popOver,所有這些都與故事板相連。

問題是,每次按下按鈕,都會出現一個新的popOver,而不是前一個。

在另一個問題中,他們建議使用以下代碼:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
    if([segue isKindOfClass:[UIStoryboardPopoverSegue class]]){
       //Dismiss current popover, set new popover
        [currentPopover dismissPopoverAnimated:YES];
        currentPopover = [(UIStoryboardPopoverSegue *)segue popoverController];
    }
}

但它的作用是,當你按下按鈕時,它會解散之前的popOver(如果有的話)並繼續使用segue來顯示一個新的popOver。

我想要做的是按鈕充當切換,這意味著如果有一個(沒有顯示新的),它會解散popOver,如果沒有,則顯示popOver。

順便說一句,這就是它如何在沒有故事板的情況下為我工作。

最佳答案

我認為這個答案可以回答你的問題。基本上,每次按下按鈕以顯示或關閉彈出按鈕時,您都會更改按鈕的動作。

轉載註明原文: UIStoryboardPopoverSegue在按下工具欄按鈕時關閉