在tableview中搜索时如何更改文本“无结果”?

Posted

技术标签:

【中文标题】在tableview中搜索时如何更改文本“无结果”?【英文标题】:how to change the text "no results" when search in tableview? 【发布时间】:2012-12-30 10:35:57 【问题描述】:

在 UITableView 中搜索没有结果后,我想将文本“No results”更改为“Not Match...”。但是我找不到在哪里。请帮助!

这里有一些代码:

- (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";
                
            


【问题讨论】:

不支持更改它的方法。不过看看***.com/questions/3451945/… 【参考方案1】:

这是一个旧线程,但是对于遇到相同问题的任何人,请尝试类似的方法。

- (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;
    

【讨论】:

【参考方案2】:

创建一个带有文本“无结果”标签的自定义视图,并在您的搜索查询不包含任何值时加载它。

【讨论】:

也许只有这样。我想在我问这个问题之前有人知道直接设置的方式。 我不喜欢ios,所以不知道细节。但是当我寻找答案时,它说苹果不提供。因此,如果你想实现,要么按照上面的去扩展显示“无结果”的特性/类。【参考方案3】:

循环遍历 subviews 并在其中寻找 UILabel 并进一步澄清我们正在寻找的子视图检查字符串/文本是否匹配“无结果” "。 如果匹配,则只需将文本更改为 "No Match"

或在您仍在等待用户按下搜索按钮时显示带有空白单元格的单行。

【讨论】:

你能说清楚吗?我找不到这些子视图属于哪些视图。 您必须遍历“searchResultsTableView's”子视图来搜索包含文本“No Results”的视图 我更新了上面的一些代码。当分配 label.text = @"Not Match" 时,它会更改 searchBar.text,而不是 searchTable 中的视图标签。请检查我的更新。【参考方案4】:

如果您在 Info.plist 中更改本地化本地开发区域,则该字符串将替换为本地语言版本。如果您更改为例如de 它将是“Keine Ergebnisse”。这是在 iOS 9 上测试的。您可以尝试通过国际化更改文本。也许这对某些阅读和搜索此线程的人有所帮助。

相关: searchDisplayController: change the label "No Results"

【讨论】:

以上是关于在tableview中搜索时如何更改文本“无结果”?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 swift 中更改 tableView 部分中的文本颜色

如何延迟更改 tableView 中的 UILabel 文本

TableView 没有结果错误?

IOS/Objective-C:无结果时在tableview的背景视图中显示消息

TableView 中的搜索栏:输入搜索文本字符串的最后一个字符时应用程序崩溃

Obj-c - 如果没有搜索结果,返回表格视图中的 1 个单元格?