C#(Monotouch)でNSArrayオブジェクトに項目を挿入するには? そうするための適切な方法が見つかりませんか?Objective-C 側には「initWithObjects」というコンストラクタがありますが、C# 側ではこれが見つかりません。
ポンポン
C#(Monotouch)でNSArrayオブジェクトに項目を挿入するには? そうするための適切な方法が見つかりませんか?Objective-C 側には「initWithObjects」というコンストラクタがありますが、C# 側ではこれが見つかりません。
ポンポン
質問で質問に答えて申し訳ありませんが、NSArrayを作成してもよろしいですか?
モノタッチは舞台裏でいくつかの作業を行うので、NSArrayを扱う必要がないのでお願いします。
MonoTouch APIデザインページに移動し、「NSArray」のページ内検索を実行すると、次のことがわかります。
NSStringとNSArrayを処理する代わりに、ランタイムはこれらをC#文字列とAPI全体で厳密に型指定された配列として公開します。
つまり、特別な理由がない限り、NSArrayをいじる必要はありません。
しかし、理由がある場合、またはそれがあなたの好みである場合、ジェイソンの答えは正しいです:
NSArray someArray = NSArray.FromNSObjects(thingOne, thingTwo, thingThree);
私が追加する唯一のことは、Objective-C開発者であり、MonoTouchを試してみると、これに慣れているということです。
NSArray *someArray = [NSArray arrayWithObjects:obj1, obj2, obj3, nil];
違いは、Objective-Cバージョンの最後の「nil」です。MonoTouchのNSArrayにはこれと同じ要件はありません。含めるオブジェクトを渡すだけで、喜んでそうします。nullを終了する必要はありません:)
お役に立てれば...
私は Monotouch を使用していませんが、NSArray を操作する場合は、そのいとこである NSMutableArray を使用することをお勧めします。
この静的メソッドが必要なようです:
public static NSArray FromNSObjects (params NSObject[] items);
次のように使用します。
NSArray arr = NSArray.FromNSObjects(obj1, obj2, obj3);