首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在UINavigationBar中的searchBar isHidden之后重新获得标题

,可以通过以下步骤实现:

  1. 首先,确保你已经在UINavigationBar中添加了一个searchBar,并设置了isHidden属性为true,即隐藏了搜索栏。
  2. 当你需要重新显示标题时,可以执行以下操作:
    • 获取UINavigationBar的子视图数组,通过遍历找到包含searchBar的子视图。
    • 将searchBar的isHidden属性设置为false,以显示搜索栏。
    • 获取UINavigationBar的titleView属性,并将其设置为你想要显示的标题视图,可以是一个UILabel或自定义的视图。
    • 最后,调用UINavigationBar的layoutIfNeeded方法,以确保布局的更新。

以下是示例代码:

代码语言:txt
复制
// 获取UINavigationBar的子视图数组
if let subviews = navigationController?.navigationBar.subviews {
    for subview in subviews {
        // 找到包含searchBar的子视图
        if let searchBar = subview as? UISearchBar {
            // 显示搜索栏
            searchBar.isHidden = false
            break
        }
    }
}

// 设置标题视图
let titleLabel = UILabel()
titleLabel.text = "重新获得的标题"
navigationItem.titleView = titleLabel

// 更新布局
navigationController?.navigationBar.layoutIfNeeded()

这样,你就可以在隐藏搜索栏后重新获得标题,并显示在UINavigationBar中。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

iOS开发UINavigation系列一——导航栏UINavigtionBar

iOS开发UINavigation系列一——导航栏UINavigtionBar 一、导航栏使用         iOS开发,我们通常会使用导航控制器,导航控制器中封装了一个UINavigationBar...,实际上,我们也可以不使用导航控制器前提下,单独使用导航栏,UINavigationBar,也有许多我们可以定制属性,用起来十分方便。...我们也可以设置导航栏风格属性,从iOS6之后UINavigationBar默认为半透明样式,从上面也可以看出,白色导航栏下面透出些许背景红色。...NSDictionary *titleTextAttributes; 标题字体属性会影响到导航栏中间标题,如下:    bar.titleTextAttributes =...push与pop操作         UINavigationBar上面不只是简单显示标题,它也将标题进行了堆栈管理,每一个标题抽象为对象iOS系统是UINavigationItem对象,我们可以通过

95131

iOS14开发-UIViewController

顺向传值只需要在目标控制器声明需要接收参数,然后源控制器中进行传值即可。 storyboard 方式。 代码方式。...被代理对象(需要传值 UIViewController) 声明协议,协议定义传值方法,方法参数个数与类型取决于需要传值个数和类型。 UIViewController 声明一个代理属性。...接收值 UIViewController 实现需要传值 UIViewController 闭包属性,闭包实现拿到传过来值进行使用。...UINavigationBar 内容显示 标题 如果当前 UIViewController 设置了titleView属性,则展示标题视图。...如果当前 UIViewController 设置了title属性,则显示标题文字。 如果都没设置,则显示空白。 iOS11 之后可以设置大标题

2.3K20

iOSUISearchBar(搜索框)使用总结

iOSUISearchBar(搜索框)使用总结 初始化:UISearchBar继承于UIView,我们可以像创建View那样创建searchBar     UISearchBar * bar = [...,要想显示这个试图,首先要将这个属性设置为YES,之后给按钮数组添加按钮,使用下面这个属性: @property(nonatomic,copy) NSArray   *scopeButtonTitles...; 设置选择按钮试图按钮标题 @property(nonatomic)      NSInteger  selectedScopeButtonIndex; 设置一个默认选中按钮     bar =...@property(nonatomic) UIOffset searchFieldBackgroundPositionAdjustment; 搜索文字搜索框位置偏移 @property(nonatomic...) UIOffset searchTextPositionAdjustment; textfield搜索框位置偏移 - (void)setPositionAdjustment:(UIOffset)

2.5K10

浏览器标签tab窗口切换时事件状态侦听

浏览器标签tab窗口切换时事件状态侦听 背景 项目中使用到了websocket,用户浏览器窗口切换或者浏览器最下话后,websocket状态有可能断开,且没有重试机制,所以想通过用户回到当前页面的时候...,系统能够自动刷新,重新连接socket 解决方法 通过添加浏览器监听事件,判断用户是否离开了当前页面。...document.addEventListener('visibilitychange', function() { var isHidden = document.hidden; if...(isHidden) {//切离该页面时执行 alert("浏览器处于最小化状态了"); document.title = '当焦点不在当前窗口时网页标题';...判断用户重新回到当前页面的时候,进行页面刷新 document.addEventListener('visibilitychange', function() { var isHidden =

2.2K40

NavigationBar&tabBar调色那些事儿1. 导航栏调色那些事儿2. 标签栏TableBar那些事儿

blueColor]; 1.2 改变 NavigationBar 字体颜色 NavigationBar 上面有两处可以改变字体颜色,一是标题,二是左右按钮文字。...1.2.1 改变左右按钮文字颜色: [UINavigationBar appearance].tintColor = [UIColor whiteColor]; 1.2.2 改变标题文字颜色 字典对应了一个系统自带...方法一: Info.plist Information Property List 添加一个 Key为View controller-based status bar appearance...item,其 Type 设为 Boolean,Value 设为 NO 方法二: 然后AppDelegate.mapplication:didFinishLaunchingWithOptions:添加突下设置...,需要隐藏整个 StatusBar,方法如下: 状态栏高度是20 方法一: 和改变 StatusBar 颜色一样, Info.plist Information Property List 添加一个

1.5K50

Flutter——实现微信搜索框

实现搜索 我们是把searchBar抽出来放到了一个单独类,我们可以把数据传进去,根据搜索内容匹配搜索结果在在searchPage展示,也可以把searcheBar值告诉当前页面,之后进行搜索结果展示...(text); } (滑动显示更多) page页接收 SearchBar(listData: widget.listData, searchResult:(List list...显示选中字体 想要实现我们输入字显示选中颜色,我们要自定义标题使用富文本展示 这里我们修改下接口改为英文名字 我们根据这个传入字符串截取split Widget _titleName(String...,每次添加他们之间间隔,因为字符串时以这个搜索内容区分,没在数组展示,但是有间隔就表示我们之间有输入内容。...因此我们判断空字符串时候还要加个判断,空字符串不是最后一个。

1.8K20

自定义UISearchController外观

以前我们项目中使用搜索框时候,如果用系统自带控件则是使用UISearchDisplayController,而自从iOS8之后,系统重新给我们提供了一个搜索控件:UISearchController...UISearchController我们无需再自己初始化UISearchBar,只需要提供searchResult展示视图。...然而在开发,我们往往需要根据项目的风格来改变UISearchBar外观,通过继承方式,我们可以完全定制符合项目风格外观,然而有些情况下我们很难短时间内完成全部外观定制工作,譬如我们项目用好几个旧框架...,代码充斥着各种写好UISearchBar展示,而改动底层框架并不是一个较好地实践。...SDK提供UISearchBar,iOS7之前是分为UISearchBarBackground、UISearchBarTextField、UIButton这几个类实例组成,而在iOS7之后,是将

1.6K20

iOS学习—— UINavigationController返回按钮与侧滑返回手势研究

导航栏左上角back按钮是附着UINavigationControllerUINavigationBar里自带一个返回按钮,导航栏自带back按钮图层结构如下图所示。...一 侧滑返回      侧滑返回是系统iOS7自带一种方便用户进行返回操作而推出一种新功能。开发过程,对侧滑返回进行控制非常简单,主要就是启动侧滑手势和禁用侧滑手势。...self.navigationController.interactivePopGestureRecognizer.enabled = NO; //禁用侧滑手势  1.2 侧滑使用注意 侧滑手势使用需要注意一点就是项目开发...最重要一部分我用蓝色加粗标出来了,就是说这个UINavigationBar主要是由左右按钮控件、中间标题控件组成。...,如果你上一级设置backBarButtonItem标题过长(没有设置则默认是上一级标题),那么系统可能会自动用“Back/返回”来代替返回按钮标题

6.3K60

UINavigationBar用法

UINavigationBar是一个我们开发必定会碰到控件,用好它能帮助我们自定义导航栏样式,所以今天讲解一下UINavigationBar用法。...设置导航栏标题 这个直接是很简单设置,一行代码搞定 self.navigationItem.title = @"导航栏标题"; 设置导航栏背景颜色 导航栏背景颜色,也是很简单 自己替换代码颜色即可...UIImage imageNamed:@"123.jpg"] forBarMetrics:UIBarMetricsDefault]; //表示横屏竖屏都显示 UIBarMetricsDefault, //表示只横屏下才显示...黑色颜色,用于亮色背景,一个是白色用于深色背景 设置返回按钮 有时候我们会发现,我们设置返回按钮都是蓝色默认颜色,那么到底该怎么更改这些按钮颜色呢 设置返回按钮颜色,只设置tintColor颜色就好了...: UINavigationBar *navigationBar = self.navigationController.navigationBar; [navigationBar setBackgroundImage

2K20

iOS导航栏使用总结

; 1.全局设置 全局设置一般都是AppDelegate设置,这样整个app都会生效,相关代码与效果图如下: //1.设置导航栏背景颜色 [[UINavigationBar appearance...:[UIImage imageNamed:@"navigationBarImg"] forBarMetrics:UIBarMetricsDefault]; //3.设置导航栏标题样式 [[UINavigationBar...导航栏视图层级图 从图中可以看出,导航栏底部分割线是一个UIImageView对象,而且高度只有0.5,所以我们可以据此获取到导航栏底部分割线对象,一个视图控制器实现此需求,代码如下: #import...,用于优化滑动类视图(继承于UIScrollView视图)视图控制里显示: iOS系统导航栏UINavigationBar与标签栏UITabBar默认都是半透明模糊效果,在这种情况下系统会对视图控制器...导航栏透明情况下,滑动视图自动偏移,普通视图被遮挡 其实,这种系统优化也是可以控制关闭,关闭优化之后,滑动视图就会和普通视图一样,如果还设置其布局原点是(0,0),其内容就会被导航栏所覆盖,关键代码如下

3.1K20

【IOS开发基础系列】UISearch专题

contentsController: self];          注:searchBar————searchdisplaycontroller初始化后,searchbar是不可修改,是readonly...)     //将搜索控制器搜索条设置为页眉视图 self.tableView.tableHeaderView = searchVC.searchBar; } 3.1.5 4)实现协议方法,必须实现...: predicate]];     //重新加载数据          [self.tableView reloadData]; } 3.1.6 5)设置UITabelViewController其它...也有Search bar变量,但是此界面Search bar必须自己新建定义,不能通过重用UISearchController....使用时注意:searchBarTextDidBeginEditing事件必须将当前子视图上移44px(即移到导航条),以便达到让用户觉得UISearchController界面Search bar

28720

iOS开发UINavigation系列二——UINavigationItem

二、来说说UINavigationItem         Item,从英文上来理解,它可以解释为一个项目,因此,item不是一个简单label标题,也不是一个简单button按钮,它是导航栏管理一个项目的抽象...;  [bar pushNavigationItem:item animated:YES]; 我们可以看到,导航栏上中间,有title这样一个item: ?...通过下面的属性,可以给这个Item添加一个说明文字,这段文字会显示item上方: item.prompt= @"我是navigationItem说明文字"; ?...这里有一点需要注意,虽然backBarButtonItem标题我们可以自定义,但是方法和其他属性我们都不能定制,是系统实现好。...当然,我们也可以设置push出来新item时候,隐藏前面的返回按钮,使用如下属性: @property(nonatomic,assign) BOOL hidesBackButton; - (void

60520

「原生案例」如何在JavaScript实现实时搜索功能

(); 在那之后,我们继续根据用户搜索输入,通过检查用户输入电影标题是否包含在 movieList 数据任何电影标题中,并将电影标题设置为小写以与用户输入匹配,来页面上按标题筛选电影 const...,来显示与用户搜索栏输入字符匹配电影标题实时搜索结果。...= 21600000; // 6 hours in milliseconds 之后,我们需要取回之前本地存储设置 cacheTimestamp : const cacheTimestamp =...简单来说,这就是说:“当前时间值减去我们之前存储缓存时间值,是否大于我们设置过期时间?如果是,就从API重新获取电影数据;如果不是,就使用缓存数据。”...用户将欣赏能够快速方便地找到相关信息,而无需重新加载页面。 通过这个指南所获得知识,您已经具备了JavaScript中有效实现实时搜索功能能力。

73840

你可能需要为你 APP 适配 iOS11

之后,也就是说tableView reloadData之后,tableViewcontentOffset发生了几次变化。...一、UIKit’s Bars中加入新功能 WWDC通过iOS新增文件管理App:Files开始介绍,Files这个APP能够看到iOS11UIKit’s Bars一些新特性:浏览功能上标题视图...,navigation bar就会在整个APP显示大标题,如果想要在控制不同页面大标题显示,可以通过设置当前页面的navigationItemlargeTitleDisplayMode属性; 3...5、UIToolbar and UINavigationBar— Layout iOS 11 ,当苹果进行所有这些新特性时,也进行了其他优化,针对 UIToolbar 和 UINavigaBar...因为不会缓存正确行高,tableView reloadData时候,会重新计算contentSize,就有可能会引起contentOffset变化。

2.4K00

iOS状态栏设置

NavigationController,那么直接在ViewController设置是不生效,只能在NavigationController设置 所以如果你用Storyboard配置NavigationController...statusBar颜色 navigationBar上addSubView该UIView即可 UINavigationBar设置 上面说了状态栏 这里顺便把UINavigationBar也说了 我配置...let appear = UINavigationBar.appearance(); //早期版本上设置 不能全局方式设置 会导致app崩溃 //appear.translucent = false...(); //设置标题样式 appear.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.whiteColor(),NSFontAttributeName...; 注意 1) appear.translucent配置早期系统会崩溃,不建议配置,建议ViewController配置 2) translucent=true也就是透明时,barTintColor

2.6K11
领券