如何将项目插入的NSArray对象在C#(MonoTouch的)?我没有找到合适的方法来做到这一点?在Objective-C侧,有一个名为“initWithObjects”构造函数,但我不觉得这是在C#的一面。

POM

有帮助吗?

解决方案

对不起,回答一个问题你的问题,但你一定要创建一个NSArray?

我问,因为MonoTouch的做幕后的一些工作,这样你就不必处理的NSArray。

如果你去 MonoTouch的API设计页面和“NSArray的”做一个页内搜索,你会发现这样的:

  

而不是处理的NSString和NSArray的的运行时间,而不是暴露这些在整个API C#字符串和强类型阵列。

在换句话说,除非有特殊原因,不必惹的NSArray。

但是,如果你的的有一个理由,或者如果它是你的偏好,然后杰森的回答是正确的:

NSArray someArray = NSArray.FromNSObjects(thingOne, thingTwo, thingThree);

我想补充一点的是,如果你是一个Objective-C开发,并给予MonoTouch的一个尝试,你已经习惯了这一点:

NSArray *someArray = [NSArray arrayWithObjects:obj1, obj2, obj3, nil];

的差是“无”在Objective-C的版本的结束。 MonoTouch中的NSArray中没有此相同的要求。你只是通过它,你希望它包含的对象,并愉快地这样做。否终止空需要:)

希望这有助于...

其他提示

我不使用MonoTouch的 - 但如果你想操纵一个NSArray,你会想用它的表妹,NSMutableArray里。

它看起来像这样的静态方法是你想要什么:

public static NSArray FromNSObjects (params NSObject[] items);

用于这样的:

NSArray arr = NSArray.FromNSObjects(obj1, obj2, obj3);
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top