2013-05-20 35 views
0

我有以下的代碼工作在OS X 10.8罰款:OS X 10.7中的[NSPatternColor CGColor]是什麼?

[viewLayer setBackgroundColor:[NSColor colorWithPatternImage:[NSImage imageNamed:@"editbackground.png"]].CGColor]; 

但是,當我用它在OS X 10.7,我得到以下崩潰:

-[NSPatternColor CGColor]: unrecognized selector sent to instance 

有誰知道我怎麼能使代碼在10.7上工作?

回答

0

看起來像一個ARC早期版本問題。嘗試將其分成兩行,並使用CGColorRef中間值。

CGColorRef color = [NSImage imageNamed:@"editbackground.png"]].CGColor; 
[UIColor colorWithPatternImage:color]; 
CGColorRelease(color); 

See SO answer

1

這是無關的提前釋放(但可以解釋很多我見過的其他問題!)。根據NSColor類參考,CGColor僅支持從10.8開始。