1
我設法整合Facebook(Xamarin.Facebook.iOS)我有自定義類遊戲(ShareDialog保護了構造函數):Facebook共享對話框不關閉/取消
public class MyShareDialog : Facebook.ShareKit.ShareDialog
{
public MyShareDialog() : base(NSObjectFlag.Empty)
{
}
}
然後我創建並顯示對話框:
string url = "http://my-url.com/class-to-generate-picture.php?score=" + Board.Score + "&textUp=" +
System.Web.HttpUtility.UrlEncode("facebook_I_Scored".Localize());
var myShareDialog = new MyShareDialog();
var content = new Facebook.ShareKit.ShareLinkContent {
ContentDescription = "facebook_URLTitle".Localize(),
ContentTitle = "facebook_URLDescription1".Localize() + " " +
Board.Score + " " + "facebook_URLDescription2".Localize(),
ImageURL = new NSUrl(url)};
content.SetContentUrl(new NSUrl("http://my-url.com"));
myShareDialog.SetShareContent(content);
myShareDialog.SetDelegate(new MyShareDelegate());
myShareDialog.Show();
本地化()是我的擴展方法來獲得本地化的字符串(我使用的Windows和Android的代碼,而這個擴展讓我的共享代碼:)舒適)。 Board.Score是一個包含-yeah分數的靜態int。
MyShareDelegate:
public class MyShareDelegate : Facebook.ShareKit.ISharingDelegate
{
public IntPtr Handle { get; }
public void DidComplete (Facebook.ShareKit.ISharing sharer, NSDictionary results)
{
}
public void DidFail (Facebook.ShareKit.ISharing sharer, NSError error)
{
}
public void DidCancel (Facebook.ShareKit.ISharing sharer)
{
}
public void Dispose()
{
}
}
我有2個問題:
DidComplete/DidFail/DidCancel不會被調用。
一切正常,份額被髮表在時間軸但點擊後SHARE /取消沒有被關閉對話框......
我在做什麼錯?
的倍率在這裏,我覺得不適後 - 這是接口的實現,而不是一個derrived類。如果沒有工作「DidComplete」,我沒有一個地方可以把這種方法... – WojGrze
我改變了MyShareDelegate到: 公共類MyShareDelegate:Facebook.ShareKit.SharingDelegate和overrode這些方法,但仍然沒有運氣(我試圖顯示UIAlertView取消/完成後)... – WojGrze
所以在刪除後'yShareDialog.SetShareContent(content);'沒有什麼可以共享失敗,DidFail被調用。但DidComplete/DidCancel仍然沒有成功... – WojGrze