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

相关推荐
BlackWolfSky15 小时前
鸿蒙文件操作
macos·华为·harmonyos·鸿蒙
私人珍藏库17 小时前
[Android] AR绘画素描1.0版(AR Draw - Sketch Anime Cartoon 1.0)
macos·ar·sketch
月屯1 天前
平台消息推送(go)
数据库·后端·golang·cocoa·iphone·gin
cmdyu_1 天前
修复mac系统下node22安装模块报fatal error: ‘memory‘ file not found错误的问题
macos·npm·node.js
白玉cfc2 天前
【iOS】UICollectionView
macos·ios·cocoa
fukai77222 天前
BetterDisplay Pro for Mac显示器增强工具
macos·计算机外设
ajassi20002 天前
开源 Objective-C IOS 应用开发(一)macOS 的使用
macos·ios
ajassi20002 天前
开源 Objective-C IOS 应用开发(二)Xcode安装
ios·objective-c·xcode
MonkeyKing_sunyuhua2 天前
mac怎么卸载office Powerpoint
macos·powerpoint
lichong9512 天前
【macOS 版】Android studio jdk 1.8 gradle 一键打包成 release 包的脚本
android·java·前端·macos·android studio·大前端·大前端++