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

无法在Swift4中的UINavigationBar上推送UINavigationItem

在Swift4中,可以通过以下步骤在UINavigationBar上推送UINavigationItem:

  1. 创建一个新的UINavigationItem对象,用于表示要推送的内容。
  2. 将新创建的UINavigationItem对象设置为当前视图控制器的navigationItem属性。
  3. 调用navigationController的pushViewController方法,将当前视图控制器推送到导航堆栈中。

以下是详细的步骤:

  1. 首先,创建一个新的UINavigationItem对象,用于表示要推送的内容。可以使用以下代码创建一个新的UINavigationItem对象:
代码语言:txt
复制
let newItem = UINavigationItem(title: "New Item")

这将创建一个新的UINavigationItem对象,并将其标题设置为"New Item"。

  1. 接下来,将新创建的UINavigationItem对象设置为当前视图控制器的navigationItem属性。可以使用以下代码将新的UINavigationItem对象设置为当前视图控制器的navigationItem属性:
代码语言:txt
复制
self.navigationItem = newItem

这将将新的UINavigationItem对象设置为当前视图控制器的navigationItem属性。

  1. 最后,调用navigationController的pushViewController方法,将当前视图控制器推送到导航堆栈中。可以使用以下代码将当前视图控制器推送到导航堆栈中:
代码语言:txt
复制
self.navigationController?.pushViewController(self, animated: true)

这将使用动画效果将当前视图控制器推送到导航堆栈中。

推荐的腾讯云相关产品和产品介绍链接地址:

  • 腾讯云移动开发平台:https://cloud.tencent.com/product/mpp
  • 腾讯云云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云云原生容器服务(TKE):https://cloud.tencent.com/product/tke
  • 腾讯云数据库(TencentDB):https://cloud.tencent.com/product/cdb
  • 腾讯云人工智能(AI):https://cloud.tencent.com/product/ai
  • 腾讯云物联网(IoT):https://cloud.tencent.com/product/iotexplorer
  • 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
  • 腾讯云区块链服务(BCS):https://cloud.tencent.com/product/bcs
  • 腾讯云游戏多媒体引擎(GME):https://cloud.tencent.com/product/gme
  • 腾讯云音视频处理(VOD):https://cloud.tencent.com/product/vod
  • 腾讯云网络安全(NSA):https://cloud.tencent.com/product/nsa
  • 腾讯云CDN加速(CDN):https://cloud.tencent.com/product/cdn
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

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

iOS开发UINavigation系列一——导航栏UINavigtionBar 一、导航栏使用         iOS开发,我们通常会使用导航控制器,导航控制器中封装了一个UINavigationBar...,实际,我们也可以不使用导航控制器前提下,单独使用导航栏,UINavigationBar,也有许多我们可以定制属性,用起来十分方便。...push与pop操作         UINavigationBar上面不只是简单显示标题,它也将标题进行了堆栈管理,每一个标题抽象为对象iOS系统UINavigationItem对象,我们可以通过...//向栈添加一个item,上一个item会被推向导航栏左侧,变为pop按钮,会有一个动画效果 - (void)pushNavigationItem:(UINavigationItem *)item ...UINavigationBar,还有如下一个属性: @property(nullable,nonatomic,weak) id delegate;

1.1K31
  • iOS开发UINavigation系列二——UINavigationItem

    iOS开发UINavigation系列二——UINavigationItem 一、引言         UINavigationItem是导航栏用于管理导航项类,在上一篇博客,我们知道导航栏是通过...这篇博客,主要讨论UINavigationItem使用方法。 UINavigationBar:http://my.oschina.net/u/2340880/blog/527706。...二、来说说UINavigationItem         Item,从英文上来理解,它可以解释为一个项目,因此,item不是一个简单label标题,也不是一个简单button按钮,它是导航栏管理一个项目的抽象...;  [bar pushNavigationItem:item animated:YES]; 我们可以看到,导航栏中间,有title这样一个item: ?...三、关于UIBarButtonItem         一个UINavigationItem,还可以包含许多BarButtonItem,BarButtonItem是一系列按钮,会出现在导航栏左侧或者右侧

    67920

    iOS16 适配指南(基于Xcode 14 Beta3)

    iOS 16 真机调试时需要在设备设置 —> 隐私与安全 —> 开发者模式打开开发者模式。新增 UICalendarView,可以显示日期并支持单选与多选日期。...新增 UIPasteControl 用于读取剪贴板内容,否则跨 App 读取时会弹出对话框让用户进行选择是否同意。...新增 LARightStore 用于存储与获取 keychain 数据。UIImage 增加了新构造函数用于支持 SF Symbols 最新版增加类别 Variable。...UINavigationItem 增加了一个属性style用于描述 UINavigationItem UINavigationBar 布局;增加了一个属性backAction用于实现当前 UIViewController...UIMenu(title: "", preferredElementSize: .small, children: menuElements)隐私权限增强,如通过 UIDevice 获取设备名称时,无法获取用户信息

    6.7K50

    iOS8 自定义navigationbar 以及 UIBarButtonItem 边距问题

    *bar = [[UINavigationBar alloc] initWithFrame:CGRectMake(0, 0, 320, 32)]; [bar setBackgroundImage...,左右按钮都可以替换,但是如果放在UITableViewController,自定义navigationbar会随着scrollview滑动而滑动,不会像系统自带navigationbar一样始终保持屏幕最上方...那么我们可以有第二种解决方式,修改原来navigationbar,其实就是改一下leftBarButtonItem或者rightBarButtonItemnavigationbar上面的位置:修改UIBarButtonItem...修改UIBarButtonItem 边距 @interface UINavigationItem (margin) @end @implementation UINavigationItem (margin...[self setRightBarButtonItem:_rightBarButtonItem animated:NO]; } } #endif @end 以上代码可以放置主视图控制器

    1.8K70

    iOS开发UINavigation系列四——导航控制器UINavigationController

    iOS开发UINavigation系列四——导航控制器UINavigationController 一、引言         在前面的博客,我么你介绍了UINavigationBarUINavigationItem...前几篇博客地址如下: UINavigationBar:http://my.oschina.net/u/2340880/blog/527706 UINavigationItem:http://my.oschina.net...//iOS7之后,导航右划会进行pop操作,设置这个enable可以控制设置手势是否失效 @property(nullable, nonatomic, readonly) UIGestureRecognizer... *interactivePopGestureRecognizer; 四、iOS8后导航新特性 //这个方法是为了iOS方法命名统一,导航,其作用和push一样 - (void)showViewController...) BOOL hidesBarsWhenKeyboardAppears; //屏幕滑动时候隐藏导航栏,常用于tableView,滑隐藏导航栏,下滑显示,带动画效果 @property (nonatomic

    1.8K20

    iOS开发UINavigation系列三——工具栏UIToolBar

    只是功能更加简单,工具栏也有UIBarButtonItem按钮,在前两篇博客,对导航栏和导航项都进行讨论,地址如下: UINavigationBar:http://my.oschina.net/u.../2340880/blog/527706 UINavigationItem:http://my.oschina.net/u/2340880/blog/527781         导航栏一般会出现在视图头部...,与之相对,工具栏一般会出现在视图底部,上面可以填充一些按钮,提供给用户一些操作。...下面是UIToolBar一些方法,其中大部分在UINavigationBar中都有涉及,这里只做简单介绍: //工具栏风格,和导航栏类似,有黑白两种 @property(nonatomic) UIBarStyle... barStyle;  //设置工具栏按钮数组 @property(nullable,nonatomic,copy) NSArray *items;  //设置工具栏是否透明

    56410

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

    导航栏左上角back按钮是附着UINavigationControllerUINavigationBar里自带一个返回按钮,导航栏自带back按钮图层结构如下图所示。...一 侧滑返回      侧滑返回是系统iOS7自带一种方便用户进行返回操作而推出一种新功能。开发过程,对侧滑返回进行控制非常简单,主要就是启动侧滑手势和禁用侧滑手势。...self.navigationController.interactivePopGestureRecognizer.enabled = NO; //禁用侧滑手势  1.2 侧滑使用注意 侧滑手势使用需要注意一点就是项目开发...他们都属于UINavigationItem组成部分,都显示navigationBar,都属于UIBarButtonItem类,所以我给他们取名为导航条按钮三兄弟,哈哈哈。。。   ...对于导航栏按钮三兄弟,我们3个类下面都能发现他们,比如当前一个UIViewController内,输入以下方法都能发现他们。

    6.7K60

    iOS11UINavigationBaritem左右间距调整

    相信很多同学都知道iOS7之后调整导航栏两侧按钮距离左右间距,其实就是左右barButtonItem数组添加一个宽度为负占位item。...一个新界面之后再返回回来之后位置就还原了  解决方案其实很简单,只要将设置leftItem方法写在viewWillAppear即可,这样即可保证约束不会被系统重置。...现在有一个终极解决方案: UINavigationBarContentView平铺在导航栏作为iOS11各个按钮父视图,该视图所有的子视图都会有一个layoutMargins被占用,也就是系统调整占位...左右占位约束就不存在了 给UINavigationBar写一个分类: #import "UINavigationBar+iOS11Spacing.h" #import <objc/runtime.h...); } else { method_exchangeImplementations(oriMethod, swizzledMethod); } } 这样就有一个好处,原来代码基础

    1.5K30

    iOS11UINavigationBaritem左右间距调整

    相信很多同学都知道iOS7之后调整导航栏两侧按钮距离左右间距,其实就是左右barButtonItem数组添加一个宽度为负占位item。...一个新界面之后再返回回来之后位置就还原了  解决方案其实很简单,只要将设置leftItem方法写在viewWillAppear即可,这样即可保证约束不会被系统重置。...现在有一个终极解决方案: UINavigationBarContentView平铺在导航栏作为iOS11各个按钮父视图,该视图所有的子视图都会有一个layoutMargins被占用,也就是系统调整占位...左右占位约束就不存在了 给UINavigationBar写一个分类: #import "UINavigationBar+iOS11Spacing.h" #import <objc/runtime.h...); } else { method_exchangeImplementations(oriMethod, swizzledMethod); } } 这样就有一个好处,原来代码基础

    3.2K50

    【iOS 开发】基本 UI 控件详解 (UIButton | UITextField | UITextView | UISwitch)

    ; -- 高亮 : UI 控件突出显示, 处于高亮状态; 手放在按钮处于高亮状态; -- 禁用 : UI 控件关闭后, 处于禁用状态; 禁用状态控件不可操作, 禁用操作 Interface Builder...[UINavigationBar alloc] initWithFrame:CGRectMake(0, 20, 320, 44)]; //将导航条添加到 UIView 布局 [self.view...resignFirstResponder]; } @end -- 展示效果 : 点击 Done 即可关闭按钮; (4) 自定义键盘附件关闭虚拟键盘 自定义键盘附件 :  -- 作用 : 不是所有的应用都有导航栏, 没有导航栏应用...[UINavigationBar alloc] initWithFrame:CGRectMake(0, 20, 320, 44)]; //将导航条添加到 UIView 布局 [self.view...[UINavigationBar alloc] initWithFrame:CGRectMake(0, 20, 320, 44)]; //将导航条添加到 UIView 布局 [self.view

    6.8K20

    IDEA如何初始化Git,把项目推送到Git

    IDEA如何初始化Git,把项目推送到Git 登录Gitee(码云)账号,新建仓库 先按如下步骤简单新建一个仓库: ? ? 创建成功后,会出现下图中所示原始文件: ?...IDEATerminal中进行操作 注意: 可能有些朋友刚打开Terminal时候,会出现一些问题,比如不出现弹框等等 ?...Terminal输入Git命令 touch README.md touch .gitignore 复制代码 依次输入两个命令,项目中创建两个文件。 ?...在这顺便把gitignore文件配置写出来: *.class #package file *.war *.ear #kdiff3 ignore *.orig #maven ignore target...把这个分支推送到远程Git git push origin HEAD -u 复制代码 ? ? 到这,Git初始化以及创建新分支都已经完成了,这个是我根据自身项目创建,仅供参考!

    2.3K10

    Openfire弄一个简单推送系统

    推送系统 说是推送系统有点大,其实就是一个消息广播功能吧。作用其实也就是由服务端接收到消息然后推送到订阅客户端。 思路 对于推送最关键是服务端向客户端发送数据,客户端向服务端订阅自己想要消息。...只需要在服务端增加一个模块用于接收用户订阅与数据推送就完成了主体功能。 xmpp协议里可以扩展组件,这样我们写一个组件,然后连接到xmpp服务器,这样就可以应用于不同xmpp服务器。...需要用到jar包 用到了whackcore,maven工程里直接引用即可,相关依赖包会自动加载进来 org.igniterealtime.whack...推送服务就是等待或者获得需要推送消息数据后向用户广播出去服务。...,就是一直从queue获得消息,因为是阻塞队列,所以没有消息时会阻塞,一旦有消息就会执行发送sendPacket将包发送出去。

    1.2K100

    AppAppStore无法搜索到问题

    上传到 DCloud UniPush) # 1 苹果开发者账号 -Certificates, Identifiers & Profiles,选择左侧Key,点击+新建。 ...# 4 选择Platform和Bundle ID类型,填写App IDDescription和Bundle ID,勾选CapabilitiesPush Notifications,点击Continue...# 3 填写新版资料过程它会要求你选择一个构建版本,用appuploader上传ipa # 4 输入苹果开发者中心专用密码和开发者账号,上传ipa去构建版本。...,大概过20分钟左右,就可以苹果开发者中心构建版本见到了,然后你就可以继续苹果开发者中心继续架app到app store了。 ...# 6 过程还会要求我们提供各种设备屏幕快照(截屏),但假如你没有这么多类型ios设备怎么截屏呢?你可以使用工具自动生成ios截屏

    22920

    AppAppStore无法搜索到问题

    ​ 已AppAppStore无法搜索到问题在AppStore搜不到已经应用程序可以采取以下解决办法:拨打iTunes提供支持电话:4006-701-855(中国时间9:00-17:...发送邮件给Review团队,iTunes Connect登录后点击页面底部"联系我们"。选择问题类型为"App Review",如果是应用商店相关问题选择"App Store Review"。...预计大约半小时后,你App就会重新变为可供销售状态,并在AppStore显示出来。遇到这样问题确实令人苦恼,这种由于苹果缓存原因引起故障确实让人头疼(笑)。...如何使用appuploader制作apple证书​一.证书管理​点击首页证书管理​编辑二.新建证书​点击“添加”,新建一个证书文件免费账号制作证书只有7天有效期,没有推送消息功能,推送证书是用来配置在网站上推送...不是用来打包编译app。​​编辑并且免费账号只能创建开发证书,无法提交上传发布,无法使用apple登录,支付,推送等功能。

    55120

    UINavigationController 导航控制器概念属性方法

    controller,通过push与pop进行controller切换,UINavigationController是将这些控件(UINavigationBarUINavigationItem和UIToolBar...(iOS7之后,导航右划会进行pop操作,设置这个enable可以控制设置手势是否失效) @property(nullable, nonatomic, readonly) UIGestureRecognizer...*barHideOnSwipeGestureRecognizer; 10、屏幕滑动时候是否隐藏导航栏,常用于tableView,滑隐藏导航栏,下滑显示,带动画效果 @property (nonatomic...,系统会为它分配一些属性 (1)当前controller对应导航项 @property(nonatomic,readonly,strong) UINavigationItem *navigationItem...UIViewController *)viewController animated:(BOOL)animated; 这个方法是为了iOS方法命名统一,导航,其作用和push一样 - (void)

    2.1K60
    领券