我有一些代码来设置 NSMutableAttributedString:
NSMutableParagraphStyle *centred = [[NSMutableParagraphStyle alloc]init];
[centred setAlignment:NSCenterTextAlignment];
NSDictionary *attributes = [[NSDictionary alloc]initWithObjectsAndKeys:[NSFont fontWithName:@"Helvetica bold" size:12],NSFontAttributeName,
[NSColor whiteColor],NSForegroundColorAttributeName,
[NSColor clearColor], NSBackgroundColorAttributeName,
centred, NSParagraphStyleAttributeName,
nil];
NSMutableAttributedString* attribTitle = [[NSMutableAttributedString alloc]initWithString:@"Foo"];
[attribTitle setAttributes:attributes range:NSMakeRange(0, [[attribTitle string] length] - 1)];
几乎自从我开始该项目以来,它就一直坐在我的应用程序的 -awakeFromNib 方法中,没有任何问题,但就在今天,我开始尝试在 Xcode 4.3 中运行该应用程序的所有其他尝试,但由于“线程 1:EXC_BAD_ACCESS (code=1,地址=0x10)”。它在最后的 '...setAttributes...' 行中断。有一次,我尝试使用 initWithString:attributes: 方法来初始化 attribTitle,果然崩溃(当它发生时)在 alloc-init 行上。
我已经尝试清除 Xcode 重新启动,但它仍然会发生在所有其他构建中......如果应用程序没有崩溃,那么 attrbibuted 字符串会按预期显示。
我想知道我是否有一个损坏的项目文件,但以防万一我做了一些愚蠢的事情,任何人都可以指出一个错误 - 大概它在“属性”NSDictionary 中?
谢谢!
托德。