#if USE_UIKIT_PUBLIC_HEADERS || !__has_include(<UIKitCore/UIActivityViewController.h>)
//
// UIActivityViewController.h
// UIKit
//
// Copyright 2012-2018 Apple Inc. All rights reserved.
//
#import <Foundation/Foundation.h>
#import <UIKit/UIViewController.h>
#import <UIKit/UIKitDefines.h>
#import <UIKit/UIActivity.h>
NS_ASSUME_NONNULL_BEGIN
typedef void (^UIActivityViewControllerCompletionHandler)(UIActivityType __nullable activityType, BOOL completed);// 已弃用
/**
用户选中操作之后的回调(一般用来提示分享成功/失败)
@param activityType 操作类型
@param completed 是否完成(用户完成了操作,还是取消了操作)
@param returnedItems <#returnedItems description#>
@param activityError 记录错误信息(无错误返回nil)
*/
typedef void (^UIActivityViewControllerCompletionWithItemsHandler)(UIActivityType __nullable activityType, BOOL completed, NSArray * __nullable returnedItems, NSError * __nullable activityError);
#pragma mark - 分享控制器 Class
#pragma mark -
/*
- UIActivityViewController
分享控制器(系统自带的分享控制器)
- 概述
可以设置如何操作:系统自带(复制到粘贴板;发布到社交媒体;电子邮件/SMS发送内容等),也可以自定义一些操作
可以设置要分享的内容:可以是文字/图片/URL等
如何弹出:iPhone/iPod用Modal;iPad用Push
*/
NS_CLASS_AVAILABLE_IOS(6_0) __TVOS_PROHIBITED @interface UIActivityViewController : UIViewController
/* 实例化 */
- (instancetype)init NS_UNAVAILABLE;
- (instancetype)initWithNibName:(nullable NSString *)nibNameOrNil bundle:(nullable NSBundle *)nibBundleOrNil NS_UNAVAILABLE;
- (nullable instancetype)initWithCoder:(NSCoder *)aDecoder NS_UNAVAILABLE;
/**
指定初始化方法
@param activityItems 要分享的内容(文字/图片/URL等)
@param applicationActivities 系统提供的操作(复制到粘贴板;发布到社交媒体;电子邮件/SMS发送内容等)
@return UIActivityViewController
*/
- (instancetype)initWithActivityItems:(NSArray *)activityItems applicationActivities:(nullable NSArray<__kindof UIActivity *> *)applicationActivities NS_DESIGNATED_INITIALIZER;
@property(nullable, nonatomic, copy) UIActivityViewControllerCompletionHandler completionHandler NS_DEPRECATED_IOS(6_0, 8_0, "Use completionWithItemsHandler instead.");// 已弃用
@property(nullable, nonatomic, copy) UIActivityViewControllerCompletionWithItemsHandler completionWithItemsHandler NS_AVAILABLE_IOS(8_0);// 回调后置为空
// 排除操作类型(传入的操作将不会在分享操作中显示)
@property(nullable, nonatomic, copy) NSArray<UIActivityType> *excludedActivityTypes;
@end
NS_ASSUME_NONNULL_END
#else
#import <UIKitCore/UIActivityViewController.h>
#endif
UIActivityViewController.h
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 上一个demo:http://pan.baidu.com/s/1c0ANO6O UIActivityViewCon...
- 苹果从iOS6开始,提供了一个活动列表视图,为分享和操作数据提供了一个统一的服务接口,通过UIActivityVi...
- 首先要说的是,为什么如此多的分享平台,可以直接集成各个平台的分享功能,还要来实现系统原生的分享功能。没办法,分享功...
- 以下程序并不是都好使,不过在我的机器上都ok,有以下的限制,希望大家都检查一下自己的设备是否能用。另外就是分享的顺...