在没有结果的UITableView中搜索后,我想将“无结果”文本更改为“不匹配...”。但我找不到哪里。请帮忙!
以下是一些代码:
- (void)searchBarTextDidEndEditing:(UISearchBar *)searchBar{
if ([self.webSearchData count] == 0) {
for (UILabel *label in self.searchTable.subviews) {
if (label.text = @"No Results") {
label.text = @"Not Match";
}
}
}
}
答案 0 :(得分:4)
这是一个老线程,但对于任何有同样问题的人,请尝试这样的事情。
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
if (tableView == _searchDisplayController.searchResultsTableView) {
if (_searchResults.count == 0) {
for (UIView *view in tableView.subviews) {
if ([view isKindOfClass:[UILabel class]]) {
((UILabel *)view).text = @"YOUR_TEXT";
}
}
}
return _searchResults.count;
} else {
return (_items.count == 0) ? 0 : _items.count;
}
}
答案 1 :(得分:2)
使用带有“无结果”文字的标签创建自定义视图,并在搜索查询不包含值时加载它。
答案 2 :(得分:2)
循环浏览子视图并在其中寻找 UILabel ,并详细说明我们正在寻找的子视图检查字符串/文本是否匹配“否结果”。
如果匹配,则只需将文本更改为“不匹配”。
或
当您还在等待用户按下搜索按钮时,或显示带有空白单元格的单行。
答案 3 :(得分:0)
如果在Info.plist中更改本地化本机开发区域,则字符串将替换为本机语言版本。如果你改为例如de将是" Keine Ergebnisse"。这是在iOS 9上测试的。您可以尝试通过国际化来更改文本。也许这对于阅读和搜索此主题的人来说很有帮助。