Monotouch如何从C#中的NSArray中检索objectAtIndex

时间:2012-05-22 21:47:44

标签: c# nsarray

在objectiveC中给出一个包含字符串的NSArray fred,我可以说:

NSString *s = [fred ObjectAtIndex:5];

什么是c#等价物? Rosetta stone说使用方法ValueAt但返回IntPtr

var i = fred.ValueAt(5);

但接下来你将了解如何将IntPtr转换为NSString指针。

3 个答案:

答案 0 :(得分:5)

我遇到了同样的情况。 您可以使用新的NSString()将该IntPtr转换为NSString,如:

string strValue = new NSString(nsArr.ValueAt(1));

对你来说可能为时已晚,但也许它会帮助其他人。

答案 1 :(得分:5)

通过IntPtr感觉就像一个坏主意。相反,只要您知道要获得的项目类型,就可以使用以下内容:

int index = 0;
NSString str = myNsArr.GetItem<NSString>(index);

答案 2 :(得分:1)

string strValue = NSString.FromHandle(nsArr.ValueAt(1));