You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Navigation Controller添加左侧栏按钮无效,求助排查解决

解决Navigation Controller左侧栏按钮不生效的问题

我来帮你搞定这个问题!你遇到的左侧栏按钮没显示的情况,核心原因是你错误地操作了NavigationController的NavigationItem,而不是当前ViewController自己的NavigationItem。

问题根源

NavigationController本身的NavigationItem一般是给全局导航配置用的,每个页面的导航栏按钮、标题等元素,应该绑定到当前ViewController的this.NavigationItem上,而不是控制器容器的NavigationItem。

修正后的代码

把代码里的this.NavigationController.NavigationItem替换成this.NavigationItem,就能正常显示左侧按钮了:

this.NavigationController.NavigationBar.TintColor = UIColor.White;
this.NavigationController.NavigationBar.BarTintColor = UIColor.FromRGBA(204,165,99,255);
// 改为当前ViewController的NavigationItem
this.NavigationItem.SetLeftBarButtonItem(
 new UIBarButtonItem(UIImage.FromFile("hamburger_menu") , UIBarButtonItemStyle.Plain , (sender, args) => { 
     // 按钮点击逻辑
 }) , true);
this.Title = "Dashboard";

额外排查点

如果修改后还是不显示,可以检查这几点:

  • 确认图片文件名完全匹配(iOS系统文件名区分大小写,比如Hamburger_Menu和hamburger_menu是不同的)
  • 打开Assets.xcassets,选中hamburger_menu图片,在右侧属性面板里把Render As设置为Original Image,避免图片被导航栏的tintColor覆盖颜色
  • 确保当前ViewController已经正确嵌入到NavigationController中,this.NavigationController不为null(可以加个断点或者打印日志确认)

内容的提问来源于stack exchange,提问作者pankaj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:39:33