使用SLRequestreplaceUIActivityViewController twitter发布的操作
我试图分享一个animationGIF,但默认的UIActivityViewController Twitter共享不支持它,它将“缩小”它仍然JPG,我不得不使用SLRequest它在本文中的教导。 缺点是没有预览份额表,用户不能再input自己的信息。
不过,我看到了用户点击Twitter分享表中的“共享”后,似乎使用自定义操作的SteppyPants ,他们如何做到这一点?
换句话说,如何将UIActivityViewController的twitter共享操作replace为包含SLRequest的自定义操作。
我试过的东西:
- UIActivityItemProvider并检查UIActivityTypePostToTwitter,但是在用户点击twitter之后并在编辑文本之前运行
- 在UIActivityViewController的completionWithItemsHandler删除刚才twitted后(与仍然GIF),并再次发布与SLRequest,但不太确定,如果我可以删除旧的post,而且它为用户消耗networking带宽
- SLComposeViewController,不支持animationGIF上传,不支持自定义共享操作
PS我是iOS的新手
UIActivityItemProvider并检查UIActivityTypePostToTwitter,但是在用户点击twitter之后并在编辑文本之前运行
这非常接近!
我相信牛仔裤正在做你说的话; 向UIActivityItemProvider
提供一个UIActivityItemProvider
,但有一个扭曲。
当UIActivityItemProvider
的item
方法被调用时,它会检查UIActivityType
是否是UIActivityTypePostToTwitter
,如果是这样的话, UIActivityViewController
被解散,并提供一个自定义的SLComposeServiceViewController
。
如果仔细观察,可以看到:所呈现的视图控制器没有标题,而剩余的字符数不能正确响应URL。 SLComposeServiceViewController
对象然后实现didSelectPost
来展示一个微调器UI,同时它启动一个SLRequest
。