如何在C# (单点触控)中插入项目到NSArray对象?我没有找到合适的方法来做到这一点?在Objective-C端,有一个叫做"initWithObjects“的构造函数,但我在C#端找不到它。
pom
发布于 2009-12-12 12:08:16
很抱歉用问题来回答您的问题,但您确定要创建NSArray吗?
我之所以这样问,是因为MonoTouch会在后台做一些工作,这样您就不必处理NSArray了。
如果你转到the MonoTouch API Design page,在页面内搜索"NSArray",你会发现:
,而不是处理NSString和NSArray,而是在整个中将它们公开为C#字符串和强类型数组。
换句话说,除非您有特定的原因,否则不必使用NSArray。
但是,如果你确实有理由,或者如果这是你的偏好,那么Jason的答案是正确的:
NSArray someArray = NSArray.FromNSObjects(thingOne, thingTwo, thingThree);我要补充的唯一一件事是,如果你是Objective-C开发人员并尝试使用MonoTouch,你会习惯于这样:
NSArray *someArray = [NSArray arrayWithObjects:obj1, obj2, obj3, nil];不同之处在于Objective-C版本末尾的"nil“。MonoTouch的NSArray没有同样的要求。您只需将您希望它包含的对象传递给它,它就会愉快地这样做。不需要终止null :)
希望这能帮到你。
发布于 2009-12-07 08:34:48
我没有使用Monotouch --但是如果你想操纵一个NSArray,你会想要使用它的表亲,NSMutableArray。
发布于 2009-12-07 06:20:25
看起来这个静态方法就是您想要的:
public static NSArray FromNSObjects (params NSObject[] items);如下所示:
NSArray arr = NSArray.FromNSObjects(obj1, obj2, obj3);https://stackoverflow.com/questions/1855478
复制相似问题