小编amr*_*rox的帖子

OCMock与Core Data动态属性问题

我正在使用OCMock来模拟一些Core Data对象.以前,我使用Objective-C 1.0样式显式访问器实现了属性:

// -- Old Core Data object header
@interface MyItem : NSManagedObject {}
- (NSString *) PDFName;
- (void) setPDFName:(NSString *)pdfName;
@end

// -- implementation provides generated implementations for both getter and setter
Run Code Online (Sandbox Code Playgroud)

现在我已将代码移至Objective-C 2.0,并希望利用新的@property语法以及Core Data对象的动态生成方法实现:

// -- New Core Data object header
@interface MyItem : NSManagedObject {}
@property (nonatomic, retain) NSString *PDFName;
@end

// -- Core Data object implementation
@implementation MyItem
@dynamic PDFName;
@end
Run Code Online (Sandbox Code Playgroud)

但是,现在当我创建一个模拟项时,它似乎不处理动态属性:

// -- creating the mock item
id mockItem = [OCMockObject mockForClass:[MyItem class]]; …
Run Code Online (Sandbox Code Playgroud)

cocoa unit-testing core-data ocmock

18
推荐指数
2
解决办法
6838
查看次数

如何将ColdFusion页面转换为PDF下载?

我想将我的CFM页面生成的HTML转换为PDF,并在导航到我的页面时让用户提示标准的"另存为"提示.

pdf coldfusion

14
推荐指数
1
解决办法
3万
查看次数

限制或更改Xcode 4中的Scheme Destinations?

概述和动机

我想设置一些仅为iOS设备构建的方案.

例如,我从不想用模拟器目的地构建Ad Hoc构建.为Ad Hoc构建选择模拟器目的地的能力只是噪音.

期望的行为

所需 - 仅限iOS设备

实际行为

实际

我尝试了什么

  • 我在配置中删除了"支持平台"中的"iphonesimulator"值,这些配置仅用于设备,如下所示:

配置支持平台

  • 在Ad Hoc方案设置中,我禁用了运行和配置文件步骤.我离开了存档步骤

脚步

  • 对于所有构建步骤(包括禁用的步骤),我将构建配置设置为"Ad Hoc",之前iphoneos只设置为"Ad Hoc" .

结果到目前为止

我仍然可以选择模拟器作为方案下拉列表中的目的地:

模拟器仍然可用

但是,如果我使用Simulator目标运行该方案,我会得到一个预期的适当错误:

选定的运行目标对此操作无效.

这对我自己来说会更好,我的团队可以隐藏这些无效的目的地.

有没有更好的方法来管理给定方案的可用目的地?

xcode ios xcode4

14
推荐指数
1
解决办法
8068
查看次数

如何在Mac OS X上模拟'cp --update'行为?

GNU/Linux的版本cp有一个很好的--update标志:

-u, - 仅当SOURCE文件比目标文件新时或目标文件丢失时才更新

的Mac OS X版本cp没有此标志.

cp --update通过使用内置系统命令行程序获得行为的最佳方法是什么?我想避免安装任何额外的工具(包括GNU版本cp).

macos shell

12
推荐指数
1
解决办法
5334
查看次数

将钥匙串添加到搜索列表中?

我需要将一个.keychain文件添加到我的钥匙串搜索列表中,以获取一些自动构建工具.目前我正在使用security list-keychains命令:

list-keychains [-h] [-d user|system|common|dynamic] [-s [keychain...]]
        Display or manipulate the keychain search list.
Run Code Online (Sandbox Code Playgroud)

此命令允许您设置整个钥匙串搜索列表,但它不提供简单添加另一个钥匙串的方法.因此,添加钥匙串成为一个两步过程.

  1. 运行list-keychains并解析输出
  2. 然后做类似的事情 list-keychains -s ${existing_chains} ${new_keychain}

虽然这有效,但它似乎过于复杂并且引入了竞争条件.

它似乎open my.keychain也会将它添加到搜索列表中,但我倾向于避免使用open脚本或无头环境中的命令.

是否有更简单或更好的方法将钥匙串添加到搜索列表中?

macos keychain

12
推荐指数
3
解决办法
4577
查看次数

如何实现HUD风格的窗口,如地址簿的"大型显示"

包括内置地址簿在内的多个应用程序使用半透明的HUD窗口,带有大阴影文本.我想在我的Cocoa Mac应用程序中实现一个类似的窗口.

截图

在某处可以自由实现这种窗口吗?

如果没有,实施它的最佳方法是什么?

macos cocoa hud

8
推荐指数
1
解决办法
6484
查看次数

'setup.py test'鸡蛋安装位置?

我将项目所需的所有鸡蛋预先下载到目录中,我希望setuptools 安装该目录中的包.

在我的setup.cfg身上:

[easy_install]
allow_hosts = None
find_links = ../../setup
Run Code Online (Sandbox Code Playgroud)

我跑python setup.py develop,它找到并正确安装所有包.

为了测试,我有一个额外的要求,在setup.py.

tests_require=["pinocchio==0.2"],
Run Code Online (Sandbox Code Playgroud)

这个蛋也位于../../setup目录中.

我跑了python setup.py test,它看到依赖,并发现鸡蛋../../setup很好.但是,egg会安装到我当前的目录而不是site-packages其他鸡蛋的目录.

我已经尝试在命令行中和命令行中指定install-dir它们setup.cfg,但似乎都不适用于该tests命令.

我可以将依赖项添加到该install_requires部分,但我想保留安装和测试所需的内容,如果可能的话.

如何将依赖项保留在该tests_require部分中,但是将其安装到site-packages目录中?

python setuptools

7
推荐指数
1
解决办法
2037
查看次数

如何在iPhone应用程序中设置硬件音量?

一些iPhone应用程序,如Pandora似乎直接操纵硬件卷并响应物理卷按钮.这是怎么做到的?

AudioSessionServices允许您使用kAudioSessionProperty_CurrentHardwareOutputVolume属性获取当前硬件输出音量,但它(据称)是只读的.

iphone audio cocoa-touch volume

6
推荐指数
2
解决办法
7670
查看次数

确定目录是Mac OS X终端中的捆绑包还是包?

我希望能够确定在命令行上从Finder的角度来看,诸如'.app'之类的目录是否被视为包或包.我认为这对于一个小型的shell程序来说并不困难,但如果我不需要,我宁愿不重新发明轮子.

macos terminal

2
推荐指数
2
解决办法
9006
查看次数

NSFetchRequest/Predicate问题

我有两个实体:患者和工作.患者与Job有很多关系称为"工作",Job与患者有一对一的关系称为"患者".Job具有名为'dueDate'(Date)和'completed'(BOOL)的属性,Patient具有属性'firstName'和'lastName'(两个字符串).

我正在尝试为我的NSFetchedResultsController创建一个获取请求/谓词,我们抓取所有尚未完成的作业(即已完成==否)并按患者姓名划分它们.这是我的代码:

NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Job" inManagedObjectContext:moc];
[fetchRequest setEntity:entity];

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(completed == NO)"];
[fetchRequest setPredicate:predicate];

NSSortDescriptor *patientDescriptor = [[NSSortDescriptor alloc] initWithKey:@"patient" ascending:YES];
NSSortDescriptor *dueDateDescriptor = [[NSSortDescriptor alloc] initWithKey:@"dueDate" ascending:NO];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:patientDescriptor, dueDateDescriptor, nil];

NSFetchedResultsController *aFetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:moc sectionNameKeyPath:@"patient" cacheName:@"Jobs"];
Run Code Online (Sandbox Code Playgroud)

这是我的titleForHeaderInSection方法:

NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:section];
NSString *firstName = [[(Job *)[fetchedResultsController objectAtIndexPath:indexPath] patient] firstName];
NSString *lastName = [[(Job *)[fetchedResultsController objectAtIndexPath:indexPath] patient] lastName];

return …
Run Code Online (Sandbox Code Playgroud)

iphone core-data objective-c uitableview nsfetchedresultscontroller

2
推荐指数
1
解决办法
7487
查看次数

在Django中编写一个两脚OAuth提供程序

我正在寻找关于在Django中为OAuth编写两条腿提供程序的教程/示例/解释.

很难找到关于OAuth提供商的文档,甚至更难找到一个两足系统......

django oauth django-piston

2
推荐指数
1
解决办法
3577
查看次数

你怎么读文本文件?

你如何阅读目标c中的文本文件?我只需要编码.

Thanxs.

cocoa text objective-c

0
推荐指数
1
解决办法
523
查看次数