我是否缺少创建“复制链接”按钮的服务或参数,如 Apple 的 12 天应用程序中所示?
我可以通过允许出现“复制”按钮
UIActivityTypeCopyToPasteboard
在我的 UIActivityViewController 中,并传递给它一个 URL
NSURL *activityURL = [NSURL URLWithString:@"http://www.mylink.com/"];
它功能正常,但是按钮标题是“复制”,没有“复制链接”那么清晰。我想知道是否强制使用此标题是我错过的服务选项,还是需要定义自定义事件类型。据我所知,activityTitle 仅在您子类化服务方法时才可用。
感谢您的任何见解。
最佳答案
我知道这是旧线程。这是答案。子类 UIActivity
并且仅在粘贴板中复制其中一项是URL
这是完整的实现。
private var url = NSURL()
override func activityType() -> String? {
return "com.productHunt.copyLink"
}
override func activityTitle() -> String? {
return "Copy Link"
}
override func activityImage() -> UIImage? {
return UIImage(named: "icon-copy")
}
override func canPerformWithActivityItems(activityItems: [AnyObject]) -> Bool {
for activityItem in activityItems {
if let _ = activityItem as? NSURL {
return true
}
}
return false
}
override func prepareWithActivityItems(activityItems: [AnyObject]) {
for activityItem in activityItems {
if let url = activityItem as? NSURL {
self.url = url
}
}
}
override func performActivity() {
UIPasteboard.generalPasteboard().string = url.absoluteString
activityDidFinish(true)
}
关于ios - UIActivityViewController 中的复制链接按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20828247/