【问题标题】:How to have the iOS SearchBar Keyboard Search Button Perform an Action如何让 iOS SearchBar 键盘搜索按钮执行操作
【发布时间】:2014-04-06 05:56:33
【问题描述】:

我有一个简单的应用程序,它有一个表格视图 (TV1),它由用户选择导航栏按钮项来添加条目 (VC1) 填充。在添加条目中,当用户按下名称字段时,他们将被带到另一个表视图 (TV2),其目的是允许用户选择先前输入的名称或创建新名称。

TV2 是一个表格视图控制器,顶部有一个搜索栏。

现在,现有名称可用并向用户显示。但是,如果用户“搜索”一个不存在的名称,他们应该可以选择立即创建该名称。如果搜索不存在,我有一个按钮,用户可以点击它来创建用户。这很简单。然而,这是另一个水龙头。

有没有办法让键盘的搜索按钮执行与创建按钮相同的功能(即保存新用户并关闭 TV1),然后我可以删除中间的创建按钮表格视图?

【问题讨论】:

    标签: ios keyboard uibutton uisearchbar


    【解决方案1】:

    试试这个:

    searchBar.delegate = delegateInstance;
    
    //delegateInstance.m
    - (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar{
       //perform the same functionality of the create button 
    }
    

    【讨论】:

    • 非常感谢您的回复 Simalone - 这个方法对我有用。这真的很有帮助,我很感激。
    【解决方案2】:

    您可以通过这种方式点击搜索按钮来捕捉触发的事件:

    UISearchDisplayController有一个UISearchBar,可以设置一个delegate 用于搜索栏并实现 -searchBarSearchButtonClicked:.

    从现在开始,您应该可以调用与创建按钮相同的处理方式。在this post 上找到了这个答案。希望对您有所帮助!

    【讨论】:

    • 非常感谢 Jissay - 你的回答也很有帮助
    【解决方案3】:

    我认为您找不到正确的键盘 ReturnKeyType 用于“创建”或“添加”以让用户知道键盘的返回键将创建用户。 =)

    无论如何,我想你想要的是,如果你第二次点击“搜索”按钮,而 tableview 上没有显示搜索结果,那么你想在搜索栏上创建一个带有新搜索文本的用户。我理解对了吗?如果是这样,我想我已经回答了你的问题。

    在UISearchBarDelegate中,--searchBarSearchButtonClicked:,检查是否没有搜索结果,搜索栏中是否有文字,则可以创建用户。

    【讨论】:

    • 亲爱的焕 - 感谢您的回复。其他答案很有帮助,让我得到了答案,但我很高兴你在这方面的帮助。谢谢!
    猜你喜欢
    • 2013-07-11
    • 1970-01-01
    • 2013-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-12
    • 2023-04-03
    相关资源
    最近更新 更多