我创建了导航自定义类,我想装饰它,我拿了NavDecoration.
swift类并声明了下面代码中显示的扩展,我在这个函数中添加了搜索条形码,我想在这个扩展中设置搜索栏代理但是它的给定错误不能指定类型’UIViewController’来键入’UISearchBarDelegate
extension UINavigationController { func makeBlackNavigationbar (viewController: UIViewController,animated: Bool) { viewController.navigationController?.navigationBar.backgroundColor? = UIColor.blackColor() let add = UIBarButtonItem(barButtonSystemItem: .Add,target: viewController,action: "addTapped") let play = UIBarButtonItem(title: "Play",style: .Plain,action: "addTapped") viewController.navigationItem.rightBarButtonItems = [add,play] let left = UIBarButtonItem(barButtonSystemItem: .Add,action: "addTapped") viewController.navigationItem.leftBarButtonItems = [left] let searchBar = UISearchBar(frame: CGRectZero) searchBar.placeholder = "Search" searchBar.delegate = viewController viewController.navigationItem.titleView = searchBar }}
解决方法
您必须符合UISearchBarDelegate协议:
extension UINavigationController : UISearchBarDelegate { ... }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。