iOS ActivityViewController使用

UIActivityViewController是iOS中用于展示一个活动列表的视图控制器,允许用户通过各种内置或第三方的应用来分享内容。以下是使用UIActivityViewController分享文本内容的示例代码:

import UIKit

class ViewController: UIViewController {

@IBAction func shareButtonTapped(_ sender: Any) {

let textToShare = "这是要分享的文本内容"

let activityViewController = UIActivityViewController(activityItems: textToShare, applicationActivities: nil)

// 如果使用iPad,需要配置popoverController

if let popover = activityViewController.popoverPresentationController {

popover.sourceView = self.view // 设置popover的源视图,通常是一个按钮或其他视图

popover.sourceRect = CGRect(x: self.view.bounds.midX, y: self.view.bounds.midY, width: 0, height: 0) // 设置popover的源矩形

popover.permittedArrowDirections = \[\] // 移除所有箭头方向

}

self.present(activityViewController, animated: true, completion: nil)

}

}

在上述代码中,shareButtonTapped方法会在用户点击分享按钮时被调用。我们创建了一个UIActivityViewController实例,并将要分享的文本作为activityItems传入。如果你想分享图片或其他类型的数据,也可以将相应的数据对象加入到activityItems数组中。

如果你正在使用iPad,并且想要在Popover中显示UIActivityViewController,你需要设置popoverPresentationControllersourceViewsourceRect属性。permittedArrowDirections属性则用于设置Popover允许的箭头方向。

相关推荐
witton19 小时前
MacOS中在目录或者文件右键菜单中添加“使用VSCode打开”
vscode·macos·文件·目录·服务·automator·右键菜单
山外有山a19 小时前
【实战】M系列芯片Mac本地部署Qwen2.5:Ollama + Open WebUI 全流程与3个关键优化参数
macos
学习星球1 天前
单调栈——从“找下一个更大的“到柱状图中的最大矩形
数据库·c++·算法·leetcode·xcode
思盛iOS签名上架1 天前
App苹果签名有什么作用?
macos·ios·cocoa
MartinYeung52 天前
[论文学习]MAC:多智能体宪章学习
人工智能·学习·macos
greasyfork2 天前
Mac Sketch v2026.3 矢量图设计工具
macos·ui·sketch
无定义_2 天前
萌新联赛(六)
macos·objective-c·cocoa
Canicer2 天前
从零部署 FunASR 语音识别服务
人工智能·语音识别·xcode
风安•辛幸2 天前
mac上微信最新v4以上版客户端多开教程,亲测可用
macos·微信
weixin_531670893 天前
Interlude起来:动作动画和文字通知哪个更适合休息提醒?Mac上有没有用桌宠做动作引导的软件?
人工智能·macos·mac·swift