簡體   English   中英

TableView和iPhone X上的主頁指示器

[英]TableView and the home indicator on iPhone X

我在一個項目中使用UITableViewControllerUITableView

UITableView中的UITableViewController覆蓋了iPhone X上的家庭指示器。但是UIViewController中的UITableView沒有覆蓋iPhone X上的家庭指示器。我應該適合嗎? 當我考慮安全區域時,哪一個是正確的?

的UITableViewController

UIViewController上的UITableView

您可以繼續在標准UIViewController上使用UITableView 只需設置自動布局,以便tableview的底部與superview的底部齊平(而不是邊距)。 然后將tableview的insetsContentViewsToSafeArea屬性設置為true

迅速:

if #available(iOS 11.0, *) {
    tableView.insetsContentViewsToSafeArea = true;
}

Objective-C的:

if (@available(iOS 11.0, *)) {
    [tableView setInsetsContentViewsToSafeArea:YES];
}

iOS 12中 ,這對我有用

我嘗試設置insetsContentViewsToSafeArea但這不起作用,雖然它讓我在正確的道路上。 為我修復的是將nib / storyboard中的“Content Insets”設置為“Never”(在代碼中,該屬性是contentInsetAdjustmentBehavior )。

說明:對於iPhoneX及更高版本,系統似乎會自動為表視圖添加一些底部填充,以使內容超出主頁指示符。

這是因為UITableViewController中的表視圖是根視圖。 它將擴展到全屏。 但是你可以在UIViewController中對表視圖的底部布局指南進行約束。 所以你可以使用UIViewController。 或者您可以在UITableViewController中設置內容插入。

暫無
暫無

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

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