首页 > 移动平台 > 详细

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

时间:2015-11-09 18:34:06      阅读:161      评论: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
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!