问题标签 [objective-c]

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 投票
9 回答
119585 浏览

objective-c - 在 Objective-C 中将 NSArray 过滤成一个新的 NSArray

我有一个NSArray,我想NSArray用原始数组中满足特定条件的对象创建一个新对象。条件由返回 a 的函数决定BOOL

我可以创建一个NSMutableArray, 遍历源数组并复制过滤器函数接受的对象,然后创建它的不可变版本。

有没有更好的办法?

0 投票
5 回答
603 浏览

objective-c - 如何在 Objective-C 中自动添加属性?

在向类添加新属性时,我发现自己在 xcode 中一遍又一遍地输入相同的内容:

  1. add TYPE *NAME;(在 .h 界面中)
  2. add @property (nonatomic, retain) TYPE *NAME;(以 .h 为单位)
  3. add @synthesize NAME;(米)
  4. add [NAME release];(在.m 释放)

(我处于非垃圾收集环境中。)

我怎样才能自动做到这一点?

0 投票
2 回答
629 浏览

iphone - 许多不必要的框架加载到我的 iPhone 应用程序中 - 我可以阻止这种情况吗?

似乎有很多不必要的框架加载到我的 iPhone 应用程序中。我没有在 Xcode 中链接它们,我也不需要它们。

当我在 iPhone 上对它们运行“lsof -p”时,我看到了我无法解释的这些(和其他):

  • 核心视频
  • 地址簿UI
  • JavaScriptCore
  • 移动同步
  • EAP8021X
  • 蓝牙管理器
  • 曲库
  • 核心音频
  • 移动音乐播放器
  • 地址簿
  • 核心电话
  • 移动蓝牙
  • 日历
  • 电话界面
  • WebCore / WebKit
  • 媒体播放器
  • 视频工具箱

我想知道这是否会导致启动时间缓慢。我的应用程序非常简单。它基本上是一个类似 Twitter 的发布客户端。唯一的多媒体功能是从相机或库中选择图像,它使用简单的 NSURL / NSURLConnection 函数将数据发布到几个 Web 服务。

这是一款已越狱的 2.1 iPhone,其中安装了一些从 Cydia 安装的应用程序。这是正常的吗?

0 投票
20 回答
152196 浏览

objective-c - 迭代时从 NSMutableArray 中删除的最佳方法?

在 Cocoa 中,如果我想遍历 NSMutableArray 并删除符合特定条件的多个对象,那么在每次删除对象时不重新启动循环的最佳方法是什么?

谢谢,

编辑:只是为了澄清-我正在寻找最好的方法,例如比手动更新我所在的索引更优雅的方法。例如在 C++ 中我可以做到;

0 投票
4 回答
47996 浏览

objective-c - 如何在运行时使用 Objective-C 动态创建选择器?

我知道如何SEL在编译时使用@selector(MyMethodName:),但我想做的是从NSString. 这甚至可能吗?

我可以做什么:

我想做什么:(伪代码,这显然行不通)

我一直在搜索 Apple API 文档,但没有找到不依赖编译时@selector(myTarget:)语法的方法。

0 投票
11 回答
14446 浏览

c++ - 与 C++ 相比,使用 Objective-C 有什么优势

我听说过Objective-C,但我自己从未使用过它。我很好奇每个人对它的总体看法以及与 C++ 的关系。是否有任何类型的项目会更有用或更没用?

0 投票
7 回答
61416 浏览

objective-c - 如何在 Xcode 调试器中查看 NSDictionary 变量的内容?

有没有办法通过 Xcode 调试器查看 NSDictionary 变量的键/值对?这是在变量窗口中完全展开时的信息范围:

我期待它向我展示字典的每个元素(类似于数组变量)。

0 投票
1 回答
2207 浏览

objective-c - setPrimitiveValue:forKey: 和多对多关系

在使用它来管理多对多关系时,Apple 的文档在两个方面是模糊的。-setPrimitiveValue:forKey:

他们首先声明:

如果您尝试为新的 NSMutableSet 对象设置一对多关系,它将(最终)失败。

最终?!那有什么意思?以后会不会失败-[NSManagedObjectContext save:]?当一个托管对象变成一个故障然后又被分页回来?什么时候?我可以编写一个测试用例来始终如一地按需重新创建故障吗?

其次,提供示例代码来正确处理这种情况,他们写道:

首先使用获取现有集合primitiveValueForKey:(确保方法不返回nil

如果/当方法返回 nil 时我该怎么assert()它并立即失败,因为这意味着整个对象图已损坏并且保存会导致数据丢失?NSAssert()在它上作为对呼叫者的警告但按下(默默地什么都不做)?

现在我只是NS[Mutable]Set在这种情况下直接分配我想要的,如下所示:

那是错的吗?

0 投票
10 回答
99208 浏览

ios - 如何在没有自定义单元格的情况下将文本包装在 UITableViewCell 中

这是在 iPhone 0S 2.0 上。2.1 的答案也很好,尽管我不知道关于表格的任何差异。

感觉应该可以在不创建自定义单元格的情况下让文本换行,因为默认情况下 aUITableViewCell包含 a UILabel。我知道如果我创建一个自定义单元格,我可以让它工作,但这不是我想要实现的 - 我想了解为什么我目前的方法不起作用。

我发现标签是按需创建的(因为单元格支持文本和图像访问,所以在必要之前它不会创建数据视图),所以如果我这样做:

然后我得到一个有效的标签,但设置numberOfLines(和 lineBreakMode)不起作用 - 我仍然得到单行文本。文本中有足够的高度UILabel来显示 - 我只是返回一个很大的高度值heightForRowAtIndexPath

0 投票
5 回答
4057 浏览

objective-c - 传递 NSMutableArray 对象

我相信,我在指针领域迷路了。我有这个(代码语法可能有点不对劲,我不是在看上面有这个代码的机器......但是所有相关的细节都是正确的):

我他们把它传给另一个班级的例行公事

但是当代码返回调用例程时,[tmp count] 为 0。

我一定错过了一些非常简单但非常基本的东西,但对于我的生活,我看不到它。谁能指出我做错了什么?

编辑: www.stray-bits.com 询问我是否保留了对它的引用,我说“也许......我们试过这个:NSMutableArray *tmp = [[[NSMutableArray alloc] init] retain]; 不确定是否是你的意思,或者如果我做对了。

EDIT2:迈克麦克马斯特和安迪——那么你们可能是对的。我这里没有代码(它在同事的机器上,他们已经离开了一天),但是为了用值填充数组,我们正在按照使用解码器(?)对象的方式做一些事情。

这个函数的目的是从 iPhone 打开一个文件,将该文件读入一个数组(它是我们在之前的程序运行中保存的一个对象数组)。那个“解码器”有一种方法可以将数据放入数组中。

伙计,我已经完全杀死了这个。真心希望大家能关注,谢谢指教。我们将更仔细地研究它。