问题标签 [macruby]

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 投票
5 回答
917 浏览

objective-c - 一个简单的 PDFKit 程序中的奇怪 EXC_BAD_ACCESS

我已经编写了这个与文本字段相关联的简单操作方法。
每次我在文本字段中输入文本时,都会执行 PDF 中的搜索并PDFView自动滚动到选择:

问题是经过 3 或 4 次搜索后,我进入EXC_BAD_ACCESS第 (i) 行。
如果我调试,我会看到该查询包含一个NSCFString而不是一个NSString.
我认为这是一个内存管理问题..但是在哪里?

在此处输入图像描述

我在一个简单的测试用例中复制了同样的问题:

更新

1)如果我每次执行第二次搜索时都使用异步搜索(方法beginFindString:withOptions),似乎也会发生这种情况。

2) 我在 MacRuby 问题跟踪中发现了一个与我类似的问题:http: //www.macruby.org/trac/ticket/1029

3)似乎如果我暂时禁用垃圾收集,它会起作用,但内存会增加。我写了类似的东西:

周边搜索代码

另一个更新

非常奇怪的是,有时一切正常。比我清理和重建,问题再次出现。从某种角度来看,并不是 100% 可重现的。我怀疑 PDFKit 中的错误或我必须做的一些编译器设置

再次更新

亲爱的,这似乎很疯狂。我会专注于测试用例,它非常简单并且很容易复制问题。它出什么问题了?此测试用例仅在我禁用(通过代码或通过项目设置)GC 时才有效

另一个更新

男孩,这似乎是一个错误,但我从 Apple 网站下载了一个名为 PDFLinker 的示例(http://developer.apple.com/library/mac/#samplecode/PDFKitLinker2/Introduction/Intro.html#//apple_ref/doc/uid/DTS10003594)。这个例子实现了一个 PDFViewer。我的应用程序的代码和这个例子非常相似。对于同一个 PDF 的相同搜索操作,我的内存增加到 300/400 MB,而 PDFLinker 增加到 190MB。显然我的代码有问题。但我正在一点一点地比较它,我认为我没有插入内存泄漏(而且 Instrument 没有给我任何证据)。也许有一些项目范围的设置?

更新但从 64 位更改为 32 位内存消耗降低。64位和PDFKit肯定有问题。BTW 在第二次搜索时仍然是 EXC_BAD_ACCESS

解决方案 关键点是带有垃圾收集的 PDFKit 被窃听。如果我禁用 GC 一切正常。我遇到了另一个使我的分析变得复杂的问题:我在项目设置上禁用了 GC,但在目标设置上仍然启用了 GC。因此,Apple 的示例 PDFLinked2 有效,而我的无效。

0 投票
1 回答
367 浏览

ruby - 在 XCode 中的 macruby 应用程序中使用 gem 的最简单方法是什么?

我需要在我在 XCode 中创建的简单 macruby 应用程序中包含一个 ruby​​gem。使用 require 'rubygems' 不会出错,但下一行需要任何其他 gem 时会出现加载错误。我使用 macgems 安装了 gem。提前致谢。

0 投票
3 回答
2549 浏览

xcode - 无法通过 xcode4 提交 Mac 应用程序 - 签名无效

我不断收到此错误:

无效签名 - 当您错误地签署了应用程序的安装程序时,会发生此错误。此过程需要两个证书:“3rd Party Mac Developer Application”证书和“3rd Party Mac Developer Installer”证书。对包进行签名时,您需要确保使用安装程序证书对包进行签名。确保在通过 Xcode Organizer 提交应用程序或从命令行运行 productbuild 时指定此证书。

我用谷歌搜索,并按照说明进行操作,但无济于事。

我有:

项目 > 目标 > 构建 > 代码签名 > 3rd 方 Mac 开发者应用程序:

然后,当我去存档并打开管理器时,我去提交我选择“3rd Party Mac Installer”键。但它仍然失败:(

我还需要做其他事情吗?喜欢先清理然后再构建?(构建什么?或者只是选择构建? - 虽然我已经尝试了几乎所有的先,然后存档)。

如果它是相关的,我正在使用 MacRuby,并且必须首先为 xcode 部署进行设置:http ://redwoodapp.posterous.com/macruby-and-xcode-4-build-a-self-contained-ma

任何帮助表示赞赏 - 我在这里扯头发:(

0 投票
1 回答
375 浏览

cocoa - MacRuby:将 NSTextField 限制为整数

我只是在学习 Cocoa 和 Interface Builder 的基础知识——使用 IB 版本 3.2.6。我正在寻找学习如何将 MacRuby 用于本机 OS X 应用程序。

我有一个我只想接受整数值的 NSTextField。我使用了 NSNumberFormatter 但它似乎没有只接受整数的选项。

你会怎么做?可以在 Interface Builder 中完成吗?

0 投票
1 回答
321 浏览

ruby - ruby 正则表达式中的引号被误解为字符串的开头

~@@~@@~"我在 xcode 中有一个 macruby 项目,我想分别用和替换字符串中的所有左右引号"~@@~@@~。我在 rubular.com 中测试了以下代码,它工作正常。

但是当我在 xcode 中使用它时,它会将正"则表达式中的 解释为字符串的开头,并说我的gsub. 我试图逃避报价:

但这也没有用。谢谢你的帮助。

编辑:我设法让错误消失,似乎是由于其他原因。突出显示仍然关闭,但我可以处理它,因为它有效。

0 投票
1 回答
59 浏览

ruby - 如何为针对 MacRuby 的 gem 编写 gemspec?

我开始为 MacRuby 平台编写 gem。platform您应该在 中指定什么Gem::Specification

0 投票
1 回答
260 浏览

ruby - Cocoa/MacRuby:如何编写一个接受自定义项目的工具栏?

我正在迈出 MacRuby 的第一步。有谁知道如何将自定义工具栏添加到我的 Cocoa/MacRuby 应用程序中,该应用程序将接受“常规”项目,例如切换视图(参见http://www.stevestreeting.com/wp-content/uploads/2011/06 /SelectableToolbarDemo001.png )。

我已经阅读了一些教程,我想我必须为工具栏创建一个自定义委托,然后通过 Outlets 窗口连接它,但是 myCustomDelegate.rb 的外观如何?

0 投票
1 回答
314 浏览

ruby - MacRuby:文件对话框中的 EXC_BAD_ACCESS

我一直在使用 MacRuby,并阅读了 Matt Aimonetti 所著的 MacRuby: The Definitive Guide 一书。

Movies CoreData 应用程序示例中,我有以下代码:

该应用程序加载正常并且运行正常 - 我可以在 CoreData 中创建新电影并删除它们等。但是,当我单击调用此函数的按钮时,它会很好地打开对话框窗口,但是“取消”或“打开文件” " 按钮在这里导致崩溃:

任何帮助表示赞赏。我认为它与 BridgeSupport 有关,但嵌入不起作用或我尝试这样做不起作用。无论哪种方式,其他东西似乎很无聊,因为本书提供的示例也崩溃了。

谢谢!

补充说明:

我去 macruby.org 测试了这段代码,它运行良好:

似乎在 beginSheetModalForWindow 调用中出现了一些问题,或者我错过了一些东西,试图追踪什么。我可以使用上面的代码使用于文件选择的模态对话框工作,但它不是附加到窗口的工作表。

0 投票
1 回答
496 浏览

xcode - 如何设置 NSFontPanel 的默认值?

我正在为我的酷应用程序设置首选项窗口,该窗口显示一些文本。在首选项中,我设置了一个打开NSFontPanel. 我的应用程序存储用户首选的文本颜色和字体,并始终使用这些设置打开,这样用户就不必看到以他们不喜欢的颜色或字体显示的文本。

问题是,虽然我的应用程序能够记住这些偏好,但NSFontPanel它有问题。当我第一次打开字体面板时,所有字段的默认值都会被重置。在摆弄它们,关闭面板,然后重新打开它之后,正确的值将被保留。仅当我第一次打开面板时才会出现此问题。

我不明白为什么会这样!

当我的应用程序启动时,我一直小心翼翼地设置面板的字体和颜色,您可以从这段代码片段中看到:

0 投票
2 回答
8395 浏览

cocoa - 如何在 NSSavePanel 中预设文件名?

NSSavePanel 曾经有一个 runModalForDirectory:file: 方法,可以让您为保存面板预设目录和文件名。但这在 10.6 中已弃用

创建 NSSavePanel 时,如何在不使用已弃用方法的情况下预设文件名?