iOS 有許多Extension 可以使用
今天要介紹就是簡單的Share Extension 分享的功能
不管是照片,網址都可以快速地分享
首先打開Xcode新增一個Target
大概就按照圖片上那樣操作就對了~~~~
再來會看到ShareViewController 他是繼承 SLComposeServiceViewController
裡面應該會有三個Function
isContentValid() => 驗證,可以自己增加一些判斷,像是字數之類的
Ex: 這是Objective-C的寫法 Swift就自己轉換摟
- (BOOL)isContentValid {
// Do validation of contentText and/or NSExtensionContext attachments here
NSInteger messageLength = [[self.contentTextstringByTrimmingCharactersInSet:[NSCharacterSetwhitespaceCharacterSet]] length];
NSInteger charactersRemaining = 100 - messageLength;
self.charactersRemaining = @(charactersRemaining);//這段是會顯示剩餘字數
if (charactersRemaining >= 0) {
returnYES;
}
returnNO;
}
didSelectPost() => 當按下Post 的時候會觸發的事件
configurationItems() => 可以自訂介面但要是 SLComposeSheetConfigurationItem 物件
Ex.下面這段範例就是會多出上傳異常圖片的item,他可以加一些事件,或是另開一個新的ViewController
- (NSArray *)configurationItems {
SLComposeSheetConfigurationItem * oneItem = [[SLComposeSheetConfigurationItemalloc]init];
oneItem.title = @"上傳異常圖片";
oneItem.valuePending = NO;
return@[oneItem];
}
還有info.plist
裡面可以設定要出現share功能的條件
ImageWithMaxCount = 2 就是最大只能允許兩張圖片
總之依照你需要的功能去設定這個plist檔案就可以了
還有若icon 沒顯示出來,記得再Target MemberShip 要打勾才會顯示喔
簡單的介紹~