Xamarin iOS共享按钮
可以做这样的事情:从NSObjects衍生
public override void ViewDidLoad()
{
base.ViewDidLoad();
// Perform any additional setup after loading the view, typically from a nib.
var button = new UIButton (UIButtonType.RoundedRect) {
Frame = UIScreen.MainScreen.Bounds,
BackgroundColor = UIColor.Red
};
button.TouchUpInside += (sender, e) => {
var item = NSObject.FromObject ("HI");
var activityItems = new NSObject[] { item };
UIActivity[] applicationActivities = null;
var activityController = new UIActivityViewController (activityItems, applicationActivities);
PresentViewController (activityController, true, null);
};
Add (button);
}
大家分享拥有的项目。
,您可以通过在UIActivityViewController
是的,已经实施了这个测试,但问题是关于相同的共享视图上的附加图片,不仅仅是社交网络列表,它看起来很差 –
那么只需邮件,Twitter,阅读列表和复制? –
nope,其他社交网络也如facebook,vkontakte等。 –
现在,在项目中,我使用这个组件:
https://components.xamarin.com/view/facebook-sdk
并在按钮的TouchUpInside中我调用了这样的方法:
void Share(string sharingUrl)
{
var content = new ShareLinkContent();
content.SetContentUrl(new NSUrl(sharingUrl));
var shareDialog = new FacebookShareDialog
{
FromViewController = UIApplication.SharedApplication.KeyWindow.RootViewController,
Mode = ShareDialogMode.Native
};
shareDialog.SetShareContent(content);
shareDialog.Show();
}
其中FacebookShareDialog是一个派生类
public class FacebookShareDialog : ShareDialog
{
public FacebookShareDialog()
: base(NSObjectFlag.Empty)
{
}
}
它可以更好的不仅仅是增加一个FacebookShareButton由于事实上,你可以选择如何共享 - 原生或ShareSheet对话模式实际上不仅仅是开设更多的有用在浏览器中共享对话框
好吧,不仅仅是我需要的Facebook登录,它也是twitter和vk.com,我希望有更简单的解决方案 –
好吧,对于Twitter我们正在编写我们自己的TwitterKit绑定。幸运的是,我们现在不需要Vkontakte。 但通常它是一个更难但更正确的流程,因为许多用户不会登录到浏览器中的社交网络,只能在应用程序中登录。 – Jauhenka
最好的方法是使用
https://github.com/jguertl/SharePlugin
然后安装,你可以调用命令或事件就是这样包装后:
public Command Share {
get {
return new Command ((parameter) => {
CrossShare.Current.Share(((Joke)parameter).JokeTxt,"title");
});
}
}
什么都不做:/ 我有这里面的按钮触摸: 'CrossShare.Current.Share(“message”,“title”);'' –
这是非常过时的,因为Facebook的改变了自己的API –
哦,对不起,我的坏 – CDrosos