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

相关推荐
w***76552 小时前
[golang][MAC]Go环境搭建+VsCode配置
vscode·macos·golang
白狐_7982 小时前
网络基础核心问题深度解析:从IP/MAC到IPv6与路由配置
网络·tcp/ip·macos
z***67772 小时前
macOS安装Redis
数据库·redis·macos
j***63084 小时前
MacOS升级ruby版本
开发语言·macos·ruby
笑尘pyrotechnic2 天前
LLDB进阶:使用命令行进行检查
ios·objective-c·cocoa·lldb
z***y8622 天前
Swift在iOS中的Xcode
ios·xcode·swift
AirDroid_cn2 天前
iOS 18 后台应用偷跑流量,如何限制?
macos·ios·cocoa
Q688238862 天前
Comsol仿真金属纳米颗粒超表面的多极分解之旅
xcode
u***42072 天前
macOs安装docker且在docker上部署nginx+php
nginx·macos·docker
心灵宝贝3 天前
Mac Unity 2018.dmg游戏工具 安装步骤 简单易懂教程(附安装包)
macos·unity·游戏引擎