Objective-CでCGRectをid型へキャストする

前回 の方法で値を設定しようとしたところ、 引数がCGRect型でそのまま設定したらエラーになってしまいました。

他のクラスと同じようにキャストする方法あるんだろうなーと思って探していたら、 stackoverflowに 『Xcode - cast CGRect to ID? 』というまんまの質問がありました。

というわけで、

// CGRect => NSValue
NSValue *rectValue = [NSValue valueWithCGRect:rect];
// NSValue => CGRect
CGRect rect = [someNSValue CGRectValue];

でいけました。

参考ページ