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,你需要设置popoverPresentationController的sourceView和sourceRect属性。permittedArrowDirections属性则用于设置Popover允许的箭头方向。

相关推荐
又見山11 小时前
Obsidian 跨平台同步实测:Nutstore Sync 在 Windows、Mac、Linux、iOS、Android 全平台综合测评
windows·macos·obsidian·obsidian同步·obsidian教程·obsidian入门·obsidian笔记库搭建
庚鑫14 小时前
Xcode 26.3 调试 iOS 27:从设备元数据报错到 GUI Run
ios·objective-c·xcode
CocoaKier16 小时前
如何安装旧版的MacOS系统?
macos·ios·mac
GeofferyLibrom20 小时前
# Mac 平台 Chiaki-ng 配置指南: Base64 ID 获取
macos·base64·chiaki-ng·npsso·psnawp
GeofferyLibrom20 小时前
PS5 自动化挂机指南:基于 Mac + Chiaki-ng 视觉识别——龙信2自动挂机实战
运维·macos·自动化
月月如常20 小时前
Typora 粘贴图片时 PicGo 弹窗的解决方案
macos·typora·picgo
andyweike20 小时前
CGRect
macos·objective-c·cocoa
疯狂敲代码的老刘21 小时前
DigUp:2.8千星开源Mac语义搜索,Google DeepMind模型本机运行找遍所有文件
macos
anthonyzhu21 小时前
xcode27适配iOS27多窗口生成机制处理的问题
macos·objective-c·cocoa
TheLittleBoy1 天前
iOS 27支持的设备列表
macos·ios·cocoa·ios 27