码迷,mamicode.com
首页 > 移动开发 > 详细

在iOS中,实现点击搜索结果隐藏搜索结果的方法。

时间:2015-11-09 18:34:45      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:

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

解决办法是

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

 就行了。

在iOS中,实现点击搜索结果隐藏搜索结果的方法。

标签:

原文地址:http://www.cnblogs.com/mudy/p/4950492.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!