4

我正在尝试使用UIActivityViewController以下代码从 MonoTouch 访问:

var textToShare = new NSString("hallo there");
var activityItems = new NSObject[] {textToShare};
var excludedActivityTypes = new NSString[] { new NSString("UIActivityTypePostToWeibo"),       new NSString("UIActivityTypeMessage") };
var activityViewController = new UIActivityViewController(activityItems, null);
activityViewController.ExcludedActivityTypes = excludedActivityTypes;
this.PresentViewController(activityViewController, true, null)

显示 iOS 操作表,但不排除指定的活动。有什么建议吗?有没有这方面的 MonoTouch 示例?

4

1 回答 1

6

你很亲密。改变这个:

var excludedActivityTypes = new NSString[] { 
    new NSString("UIActivityTypePostToWeibo"),
    new NSString("UIActivityTypeMessage") 
};

进入:

var excludedActivityTypes = new NSString[] {
    UIActivityType.PostToWeibo,
    UIActivityType.Message
};

注意:常量的名称并不总是与其值相同。同样,ObjC 比较指针(而不是它们的值)以检测常量相等是很常见的(即使是不好的做法)NSString——在这种情况下创建自己的NSString实例将不起作用(无论如何,暴露const的外观更好看,代码完成效果更好来自 IDE)。

于 2012-11-13T00:00:22.523 回答