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

相关推荐
元Y亨H5 小时前
Mac 进阶效率手册:从操作熟练到效率飞升
macos
开开心心就好18 小时前
无弹窗不更新的PC本地播放工具
运维·科技·macos·docker·计算机外设·ocr·powerpoint
小王师傅6619 小时前
深入解析:Docker在Mac上的运行本质与Linux进程管理机制
linux·macos·docker
微步_ym19 小时前
Docker:在Mac的docker.desktop中安装mongo
macos·docker·容器
fukai772220 小时前
Parallels Desktop 26 :Mac 上运行 Windows 的最佳虚拟化方案
macos
ideal-cs21 小时前
总结:Windows/Mac电脑,安装ClaudeCode + DeepSeekV4Pro
windows·macos·claude code·安装claude code·deepseek v4 pro
pop_xiaoli2 天前
【iOS】通知传值实现
macos·ios·xcode
起个破名想半天了2 天前
VMWare安装macOS虚拟机教程
macos
科技侃谈2 天前
Windows和Mac日常使用推荐?联想小新 Air 15 给出大屏新答案
macos
PersistJiao2 天前
针对 Intel Mac 的硬件限制提升faster-whisper字幕识别的方法
macos·whisper