gpt4 book ai didi

iphone - 如何覆盖 UISearchDisplayController searchResult TableView 中的 "no results"文本?

转载 作者:行者123 更新时间:2023-12-03 18:48:47 25 4
gpt4 key购买 nike

我不想在我的服务器处理搜索查询时显示“无结果”文本。

enter image description here

我计算出了包含标签的表格单元格的确切坐标,并尝试覆盖它。

self.noResultsCoverView = [[[UIView alloc] initWithFrame:CGRectMake(
0.0,
44.0,
320.0,
43.0
)] autorelease];
self.noResultsCoverView.backgroundColor = [UIColor whiteColor];
[self.searchDisplayController.searchResultsTableView addSubview:self.noResultsCoverView];

令我懊恼的是,我的封面位于表格 View 上方,但标签下方。我需要将封面放在标签上方。 searchResultsTableView::bringSubviewToFront 不起作用,这让我相信该标签根本不是 searchResultsTableView 的子级。

顺便说一句,这个Stack Overflow answer对我来说不太管用。它在第一次搜索时有效,但在后续搜索中会闪烁一个奇怪的黑色封面。

最佳答案

这应该可以正常工作。返回至少一个单元格的代码:

BOOL ivarNoResults; // put this somewhere in @interface or at top of @implementation
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
if (tableView == self.searchDisplayController.searchResultsTableView) {
if (filteredList.count == 0) {
ivarNoResults = YES;
return 1;
} else {
ivarNoResults = NO;
return [filteredList count];
}
}
// {…}
// return the unfiltered array count
}

以及“显示”干净的单元:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{
if (tableView == self.searchDisplayController.searchResultsTableView && ivarNoResults) {
static NSString *cleanCellIdent = @"cleanCell";
UITableViewCell *ccell = [tableView dequeueReusableCellWithIdentifier:cleanCellIdent];
if (ccell == nil) {
ccell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cleanCellIdent] autorelease];
ccell.userInteractionEnabled = NO;
}
return ccell;
}

// {…}
}

关于iphone - 如何覆盖 UISearchDisplayController searchResult TableView 中的 "no results"文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11639257/

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