zoukankan      html  css  js  c++  java
  • 在iOS中,实现点击搜索结果隐藏搜索结果的方法。

    不知道有没有别的什么的好的方法,最近在实现一个需求(点击搜索,然后输入搜索内容,显示搜索出来的结果,然后点击搜索结果,在当前页面显示所点击的结果的详细的信息)。遇到的问题是,点击搜索结果的时候,搜索的结果不隐藏,那么你就看不到被它挡着的东西了。

    解决办法是

     for (id view in subViews) {     

           if ([view isKindOfClass:[UIButton class]]) {

                UIButton *cancelButton = (UIButton *)view;

                 [cancelButton setTitle:@"取消" forState:UIControlStateNormal];

                //  获取点击"取消"button的响应事件(actionsForTarget 这种方法返回的是一个数组)

                self.cancelSearchSELString = [[cancelButton actionsForTarget:mySearchBar forControlEvent:UIControlEventTouchUpInside] objectAtIndex:0];

                //  响应通知,运行方法直接用上面获得的响应事件方法,转换一下(这是个知识点,能够扩展下)

                [[NSNotificationCenter defaultCenter] addObserver:mySearchBar selector:NSSelectorFromString(self.cancelSearchSELString) name:@"cancelSearch" object:nil];

            }

        }

    然后在点击事件中

     [[NSNotificationCenter defaultCenter] postNotificationName:@"cancelSearch" object:nil];

                //  公布---响应---取消通知

                [[NSNotificationCenter defaultCenter] removeObserver:mySearchBar name:@"cancelSearch" object:nil];

     就行了。

  • 相关阅读:
    MySQL 删除有外键约束的表数据
    Python 类装饰器解析
    保持SSH连接的linux服务器不断线
    数字货币交易所常用概念
    Python f-string
    Linux sed命令
    CAS机制详解
    MySQL缓存机制
    PHP网络请求优化
    Java三大特性---继承
  • 原文地址:https://www.cnblogs.com/mudy/p/4950492.html
Copyright © 2011-2022 走看看