问题标签 [nsobject]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3471 浏览

iphone - perfomSelector: withObject: afterDelay: 我可以要求低优先级吗?

发送此消息时是否有某种方法可以指定我宁愿在所有待处理的 UI 事件(如果有)之后执行我的选择器?IE。在事件队列中给我的 aterDelay 计时器一个较低的优先级。

0 投票
3 回答
6959 浏览

iphone - 如何在 Interface builder .xib 文件中实例化 NSObject

问候,

我有一个基于视图的应用程序项目,我在其中创建了一个名为“SquareClass”的 NSObject 类。现在,从 Xcode 的界面构建器中,我希望能够将“SquareClass”实例化为具有全局范围的方形对象,这样,当我从任何 UI 控件(即文本框、按钮等)创建操作时... ),我希望能够在这些操作中调用该对象的方法。

例子:

如您所见,方形对象需要具有全局范围。对于我们中的一些人来说,这似乎很容易,或者可能是错误的做法。我浏览了网络,有点找到了 .nib 文件的方法,而不是 .xib 文件。

任何建议将不胜感激。非常感谢。

约翰。

ps:这是我的第一篇文章,请放纵。

0 投票
3 回答
1132 浏览

objective-c - 什么时候不将 NSObject 声明为父类?

例如:

什么时候不NSObject使用,并且是NSObject所有其他类的最终父类?

请随时纠正我使用的任何错误术语。

0 投票
1 回答
229 浏览

iphone - 类变量类型被改变

所以在我的视图控制器中,我运行代码来填充客户(自定义类)对象的 NSArray。这个自定义类的对象属于另一个名为 Address 的自定义类(客户有一个帐单地址和一个送货地址)。在视图控制器中,当列表中的客户被选中时,它会向新的视图控制器传递一个客户对象,如下所示:

我第一次在运行应用程序时访问这个视图控制器,它工作正常。但是,当我重新访问视图控制器时,会发生一些有趣的事情。应用程序崩溃,无法识别的选择器发送到实例 0x00whatever。使用 xCode 中的鼠标悬停调试功能,我发现客户的 shipAddress 变量的第一个对象的类型从 NSString 更改为 NSIndexPath。这不会发生在客户的 billAddress 对象上。有人知道这里发生了什么吗?似乎我可能遇到了内存管理问题,但在我撕开我的代码跟踪所有保留和释放之前,我肯定希望对此进行确认......

编辑:更多信息在这里。使用以下代码,我在类级别有一个 NSMutableArray。在循环的每次迭代中,我都会遍历 XML 中的节点(效果很好)。每次检测到一个新字母作为名称的第一个字母时,我都会创建一个新的子数组并将客户添加到其中,从而为我的类级别 NSMutableArray (customers) 填充每个检测到的字母表中的客户子数组。我的问题是关于循环客户对象的保留和释放。Clang Static 说客户有一个过度保留的错误,但是当我根据 Clang 修复它时,循环崩溃了。是什么赋予了?相关代码如下:

注意:这段代码在大多数情况下都有效,但 clang 不喜欢它。

编辑: Customer 类中的地址是这样分配的(在 Clang 修复后现在不起作用)

0 投票
1 回答
195 浏览

objective-c - 试图从预定义的 p 列表中获取整数?ObjC/可可

我正在开发Objective-C/Cocoa roguelike,因为我一直发现开发游戏是学习一门语言的最佳方式。我的游戏已经走得很远了,但是我遇到了问题。

每个 level.plist 都定义了一些东西,如下所示:

就这样被抓住了,我还想说这段代码一切正常:

然而,在我的NSLog探索中,我发现不是抓住我一个整数,甚至是一个有用的数字,而是抓住我一个某种对象,它在 NSLogged 时返回正确的值。我将如何将这个值变成一个整数,以便我可以像我想要的那样使用它?请注意,我只使用过NSObject*,因为没有其他方法可以正常工作。如果我=(int)改为使用,我会得到指针值或其他任何东西(1108608例如)。

我确定这是一个简单的解决方案,我提前感谢您。如果您不介意确切地解释正在发生的事情,那就太好了。我对概念的掌握很好,比大多数新手都好,但我总是对正在发生的事情感兴趣。如果我不知道发生了什么,学习编程有什么用!请非常愿意建议我注意/准备好其他类似的情况。任何建议,真的很感激,并且会提供给打算长期编码的人。我把学习拖得太久了,我唯一的遗憾是没有早点开始。

如果,无论出于何种原因,到目前为止你有兴趣尝试我的游戏:Link我目前正在实施状态保存,以便在你离开时保持关卡。这显然只是 OS X。到目前为止,我对此感到非常自豪,但我还有很长的路要走。控件在应用程序中列出。

0 投票
1 回答
228 浏览

iphone - 使用自定义类填充数组 - 检索值

我有以下代码

这会产生一系列玩家(我认为)!当我执行以下操作时,它会显示玩家的地址。

我正在努力的是检索说 array[0].name,这是一个字符串值。我敢肯定这很简单,但我很难想象这一点。

0 投票
3 回答
13305 浏览

objective-c - 什么是 NSObject isEqual: 和 hash 默认函数?

我有一个数据库模型类,它是NSObject. 我在NSMutableArray. 我indexOfObject:用来寻找匹配。问题是模型对象的内存地址发生了变化。所以我重写了hash返回模型行 ID 的方法。然而,这并不能解决它。我还必须重写isEqual:方法来比较方法的值hash

isEqual:默认情况下,该方法使用什么来确定相等性?

我假设它使用内存地址。阅读isEqual:文档后,我认为它使用了hash方法中的值。显然,情况并非如此,因为我尝试覆盖该值并没有解决我最初的问题。

0 投票
2 回答
461 浏览

ios - 属性列表应该由它自己的模型对象管理吗?

我正在构建一个 iPhone 应用程序,它通过属性列表在其中包含一些默认数据。该数据是我的模型的来源。管理这些数据的最佳方法是什么,以便用户可以从这个 plist 中读取(并在某些情况下写入)数据?

我目前正在继承 NSObject 并将 plist 数据映射到该对象中的属性,以及将数据读/写到对象的方法。我已阅读有关 NSCoding 协议和 NSCoder 的信息,但不确定如何在我的自定义类中实现它。

任何帮助将不胜感激。

0 投票
4 回答
2135 浏览

objective-c - 捕获对象上的所有方法/消息调用

如何在对象上放置一个“钩子”,以便我可以看到正在向它发送哪些消息?(即每次向对象发送消息时执行 NSLog())。

我想记得以前看过这个,但我忘记了怎么做的。我想它可能会帮助我找出为什么我的部分代码不起作用。

0 投票
4 回答
4411 浏览

objective-c - 从 NSObject 继承如何工作?

关于 Objective-C 有几件事让我感到困惑:

首先,在objective-c指南中,很清楚每个类都需要调用其子类的init方法。直接从 NSObject 继承的类是否需要调用它的init方法有点不清楚。是这样吗?如果是这样,那是为什么呢?

其次,在关于 NSObject 的部分,有这个警告:

一个不需要从另一个类继承任何特殊行为的类仍然应该成为 NSObject 类的子类。类的实例必须至少能够在运行时表现得像 Objective-C 对象。从 NSObject 类继承这种能力比在新的类定义中重新发明它更简单、更可靠。

这是否意味着我需要明确指定所有对象都从 NSObject 继承?或者这就像 Java/Python/C# 中的所有类都是 NSObject 的子类型?如果没有,是否有任何理由制作 NSObject 以外的根类?