gpt4 book ai didi

ios - UITableViewHeader 的 UISearchBar subview ?

转载 作者:可可西里 更新时间:2023-11-01 03:55:53 24 4
gpt4 key购买 nike

我想将 UISearchBar 添加到已经具有标题 View 的 UITableView。当我尝试将搜索栏添加到现有标题 View 时,它一直有效,直到我点击它,此时我得到 The view hierarchy is not prepared for the constraint,这似乎是因为搜索bar 不是 tableview 的直接 subview ,因此当 UISearchController 尝试更新它不能的约束时。

我找到的解决此问题的唯一方法是将 TableView 标题设为搜索栏,然后一切正常,但当然我会丢失标题 View 中已有的其他 View 。

最佳答案

为了避免这种行为,我将搜索栏放在容器 UIView 中。将约束应用于此容器 View ,并为容器内的搜索栏使用自动调整大小掩码。

// Configure header view
UIView *headerView = ...
...

// Create container view for search bar
UIView *searchBarContainer = [UIView new];
searchBarContainer.translatesAutoresizingMaskIntoConstraints = NO;
[searchBarContainer addSubview:self.searchBar];
[headerView addSubview:searchBarContainer];
self.searchBar.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;

// Apply constraints involving searchBarContainer
[headerView addConstraint: ...];
...

// Then add header to table view
self.tableView.tableHeaderView = headerView;

关于ios - UITableViewHeader 的 UISearchBar subview ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27512738/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com