gpt4 book ai didi

ios - 向下移动表格 View 以显示隐藏的文本字段

转载 作者:行者123 更新时间:2023-11-29 01:46:08 25 4
gpt4 key购买 nike

我有一个 View Controller ,我已将一个 TableView 放入其中。我还在 tableview 后面添加了一个 UITextField。当我单击搜索按钮时,我希望 tableview 向下移动(显示文本字段)。我虽然通过使用以下方法解决了这个问题:

self.tableView.frame.origin.y += 50

这行得通,但只要我单击文本字段,它就会消失。我还附上了一张屏幕截图,我认为它可以帮助您了解我正在努力实现的目标。尝试在 Swift 中做到这一点。一如既往的任何帮助,我们将不胜感激!

enter image description here

最佳答案

您可以将您的 UITextField 设置为 UITableView 的 headerView,如下所示:

// set the tableHeaderView to be your UITextField
self.tableView.tableHeaderView = YOUR_TEXTFIELD
// set the offset so that the textField will be initially hidden
self.tableView.contentOffset = CGPointMake(0, YOUR_TEXTFIELD.frame.size.height)
// then in the IBAction of your search button, set the offset to be (0,0)
self.tableView.contentOffset = CGPointZero

实际上你不需要在那里放一个按钮。向下滚动 UITableView 将在顶部显示 headerView(又名 UITextField)。

顺便说一句,对于您的情况,UISearchBar 是比 UITextField 更好的选择。

更新:

希望您已经阅读了我上面的回答。我没有足够的声誉来发表评论,所以我只会更新我的答案。

根据您的评论(也许您应该将其添加到您的问题详细信息中,顺便说一句):

  • UISearchBar 通常用于搜索现有行,但它可以做其他事情。无论如何,tableView的数据都在你的掌控之中。您可以确定如何在委托(delegate)方法中更新行:
    - (void)updateSearchResultsForSearchController:(UISearchController *)searchController
  • 对于多个搜索字段,我可以想出两种方法:

    1. 支持 UISearchBar 中关键字之间的空格,以便用户可以搜索多个关键字的组合。试试这个:

    //去掉所有的前导和尾随空格
    NSString *strippedString = [YOUR_SEARCHBAR_TEXT stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];

    //分解搜索词(以空格分隔)
    NSArray *searchItems = nil;
    if (strippedString.length > 0) {
    searchItems = [strippedString componentsSeparatedByString:@""];
    }

    1. 如果需要,使用 UISearchBar 的范围按钮。

关于ios - 向下移动表格 View 以显示隐藏的文本字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31910221/

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