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

NSTableView的makeViewWithIdentifier在它的一个子视图上发现nil

NSTableView是苹果公司提供的一个用于显示表格数据的控件,makeViewWithIdentifier是NSTableView的一个方法,用于根据标识符从重用队列中获取一个可重用的视图。

在使用makeViewWithIdentifier方法时,如果在指定的子视图上找不到对应的视图,则会返回nil。这通常发生在以下情况下:

  1. 子视图尚未被创建或加载:如果子视图尚未被创建或加载到内存中,makeViewWithIdentifier方法将返回nil。这可能是因为子视图尚未正确初始化或添加到父视图中。
  2. 标识符不正确:makeViewWithIdentifier方法根据标识符来查找可重用的视图,如果指定的标识符不正确或不存在于重用队列中,将返回nil。在使用makeViewWithIdentifier方法之前,需要确保正确设置了标识符,并将可重用的视图添加到重用队列中。

为了解决这个问题,可以采取以下步骤:

  1. 确保子视图已正确创建或加载,并已添加到父视图中。
  2. 检查标识符是否正确,并确保可重用的视图已添加到重用队列中。
  3. 如果子视图尚未创建或加载,可以使用合适的方法(如initWithFrame:)创建并初始化子视图,然后将其添加到父视图中。
  4. 如果标识符不正确,可以检查代码中的标识符设置,并确保正确地将可重用的视图添加到重用队列中。

需要注意的是,以上解决方法是基于苹果公司提供的NSTableView和makeViewWithIdentifier方法的,如果使用其他云计算平台或技术栈,可能会有不同的解决方案。

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

  • 腾讯云官网:https://cloud.tencent.com/
  • 云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 云数据库 MySQL 版:https://cloud.tencent.com/product/cdb_mysql
  • 云原生应用引擎 TKE:https://cloud.tencent.com/product/tke
  • 人工智能平台 AI Lab:https://cloud.tencent.com/product/ai
  • 物联网平台 IoT Hub:https://cloud.tencent.com/product/iothub
  • 移动开发平台 MDP:https://cloud.tencent.com/product/mdp
  • 云存储 COS:https://cloud.tencent.com/product/cos
  • 区块链服务 BaaS:https://cloud.tencent.com/product/baas
  • 腾讯云元宇宙:https://cloud.tencent.com/solution/virtual-universe
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

macOS开发之NSTableView应用详解

NSTableView应用详解 、引言     和iOS开发中UITableView有很大差别,NSTableView并非是个可滚动列表视图,其是个不可滚动、支持多列多行原始列表视图。...二、构建个简单列表视图     首先新建个测试工程,ViewController.m文件中编写如下代码: #import "ViewController.h" @interface ViewController...如果我们要对Cell渲染进行些定制,可以如下方法中实现: //将要渲染cell调用方法 开发者可以拿到cell对象做定制 - (void)tableView:(NSTableView *)tableView...对象是nil 如果这时返回了Cell,则此Cell宽度会覆盖整个列表 使用时要多加注意 */ - (nullable NSCell *)tableView:(NSTableView *)tableView...:(NSView *)view; //创建个用于渲染View 用于view-base - (nullable __kindof NSView *)makeViewWithIdentifier:(NSString

4.8K21

知识点 | 纯代码实现NSOutlineView详细步骤

NSTableView好像不太方便展示分组数据。 可以试试NSOutlineView。...NSOutlineView是NSTableView子类,但是他比NSTableView多了分组功能,使用层级数据结构。 ? ? 哦!那我查查怎么使用。 半小时后…… ?...创建个OS X项目工程,新建个NSViewController,ViewController中添加NSOutlineView对象并实现NSOutlineViewDataSource和NSOutlineViewDelegate...如果我们想要自定义每行背景色以及点击高亮色,该怎么做呢? 可以OutlineItemCellView中设置背景色试试。 效果是这样... ?...以上是探索纯代码实现NSOutlineView学习过程中些小总结,希望大家不吝珠玉,给予补充或者提出建议,起学习交流。

2K40
  • Jekyll-Admin-Mac 开发纪要-左侧菜单栏

    我们采用如下布局。 ? 左侧和父试图对其 上侧和父试图对其 宽度205 高度75 ? ⚠️我们发现我们图片是正常显示出来了,但是背景颜色无法显示。那是因为 OSX开发和 iOS不太样。...试图依次叠加不利于扩展,我们采用 NSTableView。 我们拖拽NSTableView控件放置 SideMenuView剩余位置。布局如下。 ? ?...我们发现我们剩下只有个 Column宽度只有 116并不是全屏显示。 去掉 NSTableView边框 我们设置宽度为 205。 ? 我们现在发现个问题,我们本来有205宽度。...我们发现我们刚才创建 NSTableView显示背景颜色是白色,我们可以关闭 NSScrollView绘制背景颜色和设置 NSTableView背景颜色为透明即可。 ?...我们最左侧放置个 NSImageView布局如下。 ? 我们 NSImageView右侧放置个 NSTextFiled Label,布局如下。 ? ?

    2.1K10

    Mac OSX 开发基础控件学习之 NSOutlineView

    NSOutlineView-feature.png 开发基于osxApplication过程中,当我们需要显示组列表结构数据时,比较容易想到控件是NSTableView;但如果你显示数据有层级结构时...,NSTableView就会面临个问题:因为osx中,NSTableView没有分组功能( sections) 因为cocoa 中提供了另个控件供满足我们需求NSOutlineView它是继承自...NSTableView子类,是Mac OSX Application常用控件之,与NSTableView相似,NSOutlineView也使用行和列来显示内容,但所不同是NSOutlineView...使用具有层级数据结构 下面我们通过个示例(你也可以从这里Demo下载工程,但更推荐自己步创建工程并实现功能)来简单学习下怎样使用NSOutlineView显示带有层级结构数据内容 创建osx...(nil, expandChildren: true) // 展开第个节点 // outlineView.expandItem(outlineView.item(atRow

    1.6K20

    键替换Key Mac软件制作教程第

    发现还在那个位置,我们发现之前红色线变成了虚线,我们点击试下,竟然变成了实线,全点亮再次运行试下。 发现还不是,我们关闭软件再次运行,发现真的居中了。...我们控件搜索里面输入label关键词,发现搜索出来还是NSTextFiled只是输入框禁用了,看来Mac是没有NSLabel这个属性。...因为输入框布局是自动计算,我们防止个NSView高度为40,上边距,左边距,右边距分别是0。 ? 我们放置个显示文本控件放在主视图上面,设置和父试图居中。 ?...我们放置NSTableView控件�约束如下。 ? 我们放置NSView紧接着刚才表格下面。 我们运行下,看下效果。 ? 此时我们界面搭建完毕。...我们发现缺少个导入和导出功能,我们菜单File选项新增两个功能导出,导入。 ? 我们AppDelegate去实现这两个功能。

    87810

    键替换Key Mac软件制作教程第二篇

    let savePannel = NSSavePanel() savePannel.runModal() 我们导出功能执行这个方法,看下效果。 ? 看样子和我们用到其他软件十分相似了。...我们存时候需要个数组对象,我们按照打开逻辑做些异常处理。 savePannel.allowedFileTypes = ["ork"]; 我们设置这个函数,强行让保存文件是.ork结尾文件。...{ didSet { reloadTableView() } } func reloadTableView() { } AppDelegate里面新增加个方法refershViewControllerList...mac开发中使用自定义NSTableCellView 我们实现NSTableView代理,先设置3条测试数据。...OHomeCellView else { return nil } cell.configNameLabel.stringValue = "这是测试数据" cell.configCheckBox.state

    70320

    重拾swift版本MVP

    也就是说咱们想使用就要遵循这个契约…… 接下来我们来做些基础性事情: 到目前为止我们看到所有的都是不能实例化协议。那么MVP我们从哪个开始入手呢?...{ return mView } } BasePresenter作为IPresenter基础逻辑扩充,同时负责从C中View绑定,最终完成交互C=>P=>V=>C个完成闭环...… 万事具备,下面我们看看怎么完成个简单MVP流程……展示流程时候我们先看看基本项目结构 ?...{ return nil } func numberOfRows(in tableView: NSTableView) -> Int { return 3...== MainMenuPresenter {} 我们让Presenter IView知道了各自具体类型,然后将P V进行绑定穿插完成个基本MVP闭环…… 最后让我们看看显示结果完成咱们今天小实例

    85340

    步,开始上手Mac 开发(

    Mac上已经存在了,试着使用NS来代替UI开头查找下,你会惊讶发现许多控件:NSScrollView, NSLabel, NSButton 等,但要注意,这些控件API可能在Mac环境中会与iOS...为了使用view Controller, 就要让App Delegate 知道存在,因此你需要做第步就是AppDelegate.m中导入view controller头文件 1.10 AppDelegate.m...到此,与iOS开发比较,你会发现些不同,iOS中需要设置窗口根控制器(rootViewController),但在OSX中并不存在根控制器,因此需要将view添加到窗口contentview中。...项目工程目录结构 Xcode默认工程模版只会根据应用名创建组(Group)和个子组supporting files ,当我们工程不断变大时,必须处理大量文件,这样查找需要文件会变得非常困难。...OSX中table view 控件是NSTableView类似iOS中UITableView,不同NSTableView行(row)中可以有很多列(column) 1.20 选中table

    4.1K40

    Mac开发跬步积累(三):被忽略 NSTabViewController

    0x00: NSTabViewController 简介 NSTabViewController 是macOS 10.10 之后推出个UI层级控制器,可以通过使用多个Tab标签来管理多个子业务控制器...先设置NSTableView样式为unspecified tabStyle = .unspecified 2....) } } 划重点 如果你实现效果与预期不同,那么定是你子业务控制器中少写了下面这行代码 self.preferredContentSize = view.frame.size...4种; 实现更多样式,需要使用tabViewtabViewType枚举; NSTabViewControllerview是NSView,里面包含个NSTabView和NSSegmentedControl...关于NSView与NSViewController相关基础,有兴趣同学可以参考macOS 开发基础视频教程中项目代码(地址文章中有链接)

    2.5K40

    SwiftUI 中掌握 ScrollView 使用:滚动可见性

    设计得易于使用,允许你将其附加到具有滚动目标布局任何 ScrollView 上。让我们通过个示例来探讨这个修饰符使用。...完整示例上面对视图修饰符有了初步了解,设计得易于使用,允许你将其附加到具有滚动目标布局任何 ScrollView 上。让我们通过个示例来探讨这个修饰符使用。...每个数字都显示个 Text 视图中,并有不同背景颜色。...onScrollVisibilityChange:视频播放器视图上应用 onScrollVisibilityChange 视图修饰符,并提供个操作闭包。...此外,页面底部有个视频播放器,当视频播放器出现在口内时,它会自动播放,当其离开口时,会自动暂停。总结今天,我们学习了如何跟踪 ScrollView 内特定视图可见性,并监控可见标识符列表。

    17121

    iOS开发中创建定时器

    https://blog.csdn.net/u010105969/article/details/79378106 应用场景: 1.轮播图(轮播图上图片定时轮播) 2.跑秒按钮(点击获取验证码之后...,按钮上秒数进行倒计时) 创建定时器方式: 1.利用NSTimer 2.利用GCD中dispatch_source_t 代码: 利用NSTimer创建定时器代码: 方式: (void)...主线程 [[NSRunLoop currentRunLoop] addTimer:self.timer forMode:NSRunLoopCommonModes]; // 如果不改变Mode模式滑动屏幕时候定时器就不起作用了...方式是将NSTimer添加到了主线程runloop中,但添加是NSRunLoopCommonModes模式下,如果是添加在NSDefaultRunLoopMode模式下那么当用户与页面进行交互时候...方式二是开辟了个子线程,子线程runloop中添加了NSTimer,此时即使模式是NSDefaultRunLoopMode,在用户与页面进行交互时候,定时器依然有效。

    90420

    地图| 高德地图源码级使用大全

    本文目录 地图基本显示 地图上放置图标 图上绘制路线路线 后台持续定位 地理编码与逆地理编码 遇到问题 地图基本显示 ?...路线规划(图上显示两个地点之间路线时)需要参照 iOS导航SDK,而不是 iOS地图SDK,不然你就走远啦 ?...路线规划直失败 那是因为你 Bundle ID高德地图中心没有注册。...,因为地图是比较耗费App内存,因此根据文档实现某地图相关功能同时,我们需要注意内存正确释放,大体需要注意有需使用完毕时将地图、代理等滞空为nil,注意地图中标注(大头针)复用,并且使用完毕时清空标注数组等...,如果后续有用功能,或者新发现,会持续更新本文......

    4.4K30

    iOS-屏幕适配实现(AutoLayout)

    比如,给xib中个子控件A设置了宽度和高度、距离父控件上下左右之间间距,就相当于给这个控件添加了6个约束,也就产生了6个约束对象 约束错误警告 红色箭头,代表约束错误,般是缺少约束或约束冲突(例如...上 相对于另个控件约束,添加到其共有的父视图上 对于两个不同层级 view 之间约束关系,添加到他们最近共同父 view 上 跨层级约束,添加到其最上层父视图上...准备般都会去掉 User Standard Value :使用标准值,而且这个值只有是设置上下方向时候才有用。...hR)、(wC hR)、(wR hC) (w是width h是height,C是Compact R是Regular) -(wC hR):适用于切尺寸竖屏iPhone -(wR hR):适用所有横屏...,同控件通过设置不同常数值实现相同效果,可以配置添加布局,而不是添加两个约束 配置添加布局,而不是添加两个约束 不同设备上修改控件属性,比如在iPhone竖屏上字体比较小,iPhone

    40310
    领券