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允许的箭头方向。

相关推荐
Swift社区15 小时前
Mac与Windows终端常用指令对比整理(实用避坑分享)
macos
Java小白笔记17 小时前
Docker 安装配置完全指南:MacOS 、Windows、Linux环境下的安装、配置与验证
linux·macos·docker
芯日记1 天前
Mac-使用文本编辑的html浏览器打开出现源代码问题
macos·html
一牛1 天前
Swift 循环引用
macos·ios
食尘者1 天前
MacBook Pro M5Max 本地大模型推理实践
macos·aigc
Mh1 天前
程序员和非程序员使用 AI 进行编程的区别究竟在哪里?
前端·javascript·xcode
x-cmd2 天前
Mac 涨价后,本地 AI 还能千元入门吗?
linux·人工智能·macos·ai·agent·amd·本地ai入门
m0_377108142 天前
小智ai-esp32
人工智能·macos·xcode
pop_xiaoli2 天前
【iOS】YYModel源码学习
学习·ios·objective-c·cocoa
测试改改2 天前
共享mac有线网络手机可连接
macos·智能手机