0

コンストラクターを拡張する方法がある場合、既存のクラス (Monotouch の UIColor など) があるかどうか疑問に思っています。これにより、私たちが持っているライブラリを簡単に操作できるようになります。

public static class UIColorExtender
{
    public UIColor(string hex)
    {
        this = ConvertHexToUIColor(hex); // This isn't necessarily the code, just filler.
    }
}
4

3 に答える 3

1

たぶん、この質問はあなたと同じことを達成しようとしていますか? Monotouch の Hex からの UIColor

UIColor クラスを見ると、R、G、B、およびアルファの 4 つの float 値以外の形式を使用する場合、ほとんどがファクトリ パターンを使用しているようです。

UIColor.FromHSB(float, float, float)
UIColor.FromWhiteAlpha(float, float)

..などなど

したがって、最善の解決策は、上記の質問のルイスのようになると思います。

于 2013-08-01T17:47:56.473 に答える
0

コンストラクターは拡張できません。クラスから継承して独自のものを実装するか、問題のクラスが読み取り専用プロパティでいっぱいでない場合は、コンストラクターの後に呼び出す初期化メソッドを作成できます。

于 2013-08-01T17:13:30.300 に答える