生成したUIColorのRGBA要素を変更する方法


`UIColor` のカテゴリを作っている時に、そのメソッドの中で `self(UIColor型)` の `RGBA` を変更する必要が出ました。  
インスタンスを再生成せずに RGBA を変更する方法を教えてください。




不可能です。

リファレンスには、以下の記述があるので明らかです。

> Color objects are immutable and so it is safe to use them from multiple
> threads in >your app.

<https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIColor_Class/index.html>

不変オブジェクトの、バグを引き起こしにくく、スレッド安全である性質から、  
iOS SDKのいくつかのクラスは、不変オブジェクトとして実装されています。

したがって今回のケース、カテゴリを作成するにあたっても、  
自身のデータを変更することなく、新しいUIColorを戻り値等で返す実装が推奨されます。




不可能です。

リファレンスには、以下の記述があるので明らかです。

> Color objects are immutable and so it is safe to use them from multiple
> threads in >your app.

<https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIColor_Class/index.html>

不変オブジェクトの、バグを引き起こしにくく、スレッド安全である性質から、  
iOS SDKのいくつかのクラスは、不変オブジェクトとして実装されています。

したがって今回のケース、カテゴリを作成するにあたっても、  
自身のデータを変更することなく、新しいUIColorを戻り値等で返す実装が推奨されます。

