簡體   English   中英

UIModalPresentationPopover - 箭頭方向向上,防止 Contentview 從箭頭尖端開始

[英]UIModalPresentationPopover - arrow direction Up, Prevent Contentview from starting from tip of the arrow

在 iOS 13 中,作為模型呈現的 UIViewcontroller 視圖恰好從箭頭的尖端開始。 因此,我所有彈出窗口中的頂部橫幅都被剪掉了。 我可以防止這種情況發生嗎? 我希望我的 UIView 不是從箭頭開始,而是一旦箭頭完成。 紅色視圖必須從箭頭底部開始

為了解決這個問題,我打開了我的視圖控制器的 XIB,選擇了最頂層的視圖,然后在文件檢查器下選中了“使用安全區域布局指南”。 然后我在該視圖的唯一子視圖(一個UITableView )周圍添加了自動布局約束(長度為 0)。

(我還需要更新視圖控制器的背景顏色。這將箭頭顏色改回 iOS 12 及之前的顏色。)

背景: https : //forums.developer.apple.com/thread/122703

我不知道他們為什么改變了這種行為,如果您不使用 xibs,處理它可能會很麻煩。 我在文檔中找不到任何關於它的內容。

使用安全區域來調整您的視圖位置。 您既可以嘗試擴大該紅色區域的大小,也可以完全跳過箭頭。 在這種特殊情況下,如果箭頭始終位於頂部,您可以使用safeAreaInsets.top

我想知道您的 contentView 是否包含 UIScrollView。 如果是,請將alwaysBounceVertical = YES添加到您的滾動視圖中。 它適用於我的情況。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM