[Swift] UIACtivity 사용 방법 요약

10339 단어 SwiftiOS
개발 중인 앱에서는 공유 버튼을 누르면 아래에서 튀어나오는 기능을 실현하려고 했지만 이름을 몰라 한참을 헤맸다.무지는 고통스럽다.
과거에 바치고 싶은 자신의 필기를 남기다.
샘플 창고https://github.com/nashirox/uiactivity-sample

UIACtivity란 무엇입니까?


이 기능은 SNS 기고나 메일 발송에서 이미지 저장에 연락처를 추가하는 등의 기능을 선택할 수 있다.

사용 가능한 서비스 유형


UIACtivity에서 다음 서비스를 설정할 수 있습니다.
유형 이름
개요
UIActivityTypePostToFacebook
Facebook에 게시
UIActivityTypePostToTwitter
트위터에 투고하다
UIActivityTypeMessage
편지를 보내다
UIActivityTypeMail
우편물을 보내다
UIActivityTypePrint
인쇄 대화 상자 시작
UIActivityTypeCopyToPasteboard
클릭 보드에 붙여넣기
UIActivityTypeAssignToContact
호출 담당자
UIActivityTypeSaveToCameraRoll
카메라 롤러에 저장
UIActivityTypeAddToReadingList
Safari에 추가
UIActivityTypePostToFlickr
Flickr에 투고
UIActivityTypePostToVimeo
Vimeo에 투고
UIActivityTypePostToWeibo
시나닷컴 미박 투고
UIActivityTypePostToTencentWeibo
텐센트 웨이보에 투고하다
UIActivityTypeAirDrop
AirDrop에서 공유

설치 방법


스토리보드


새 항목에서 공유 버튼을 가운데에 놓습니다.

Action 연결, UIButton형은 Share의 이름으로 ViewController와 연결됩니다.

코드


Acounts 프레임워크를 먼저 가져오십시오.그리고 바로 아래 느낌.
ViewController.swift
import UIKit
import Accounts

class ViewController: UIViewController {

  @IBAction func share(sender: UIButton) {

    // 共有する項目
    let shareText = "Apple - Apple Watch"
    let shareWebsite = NSURL(string: "https://www.apple.com/jp/watch/")!
    let shareImage = UIImage(named: "shareSample.png")!

    let activityItems = [shareText, shareWebsite, shareImage]

    // 初期化処理
    let activityVC = UIActivityViewController(activityItems: activityItems, applicationActivities: nil)

    // 使用しないアクティビティタイプ
    let excludedActivityTypes = [
      UIActivityTypePostToFacebook,
      UIActivityTypePostToTwitter,
      UIActivityTypeMessage,
      UIActivityTypeSaveToCameraRoll,
      UIActivityTypePrint
    ]

    activityVC.excludedActivityTypes = excludedActivityTypes

    // UIActivityViewControllerを表示
    self.presentViewController(activityVC, animated: true, completion: nil)
  }

  override func viewDidLoad() {
    super.viewDidLoad()
  }

  override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
  }
}  

실행 결과


문자, 이미지 파일, URL 조합을 통해 일어서는 대화 상자도 조금 다르기 때문에 참고하기 전에 Square를 놓습니다.
유형 이름
text + URL + image
text + URL
기본 뷰


Twitter


Facebook


우편물


기별


Flickr

감추다

기타


영어가 되는 상황.


Project->Localization에 추가Japanes (ja)하십시오.

LINE 추가


코코피드LineActivity에 설치하십시오.
pod "LINEActivity", "~> 0.2.0"
pod install 이후 다리 이음매에 보충한다.
yourAppName-Bridging-Header.h
#import "LINEActivity.h"

그리고 이전 UIACtivitvityViewController의 매개 변수applicationActivities에 배열 방식으로 추가하기만 하면 됩니다.
ViewController.swift
let LineKit = LINEActivity()
let myApplicationActivities = [LineKit]

// 標準以外のサービスも追加
let activityVC = UIActivityViewController(activityItems: activityItems, applicationActivities: myApplicationActivities)

이렇게 하면 추가된다.흑백은 규격으로 컬러 원하시면 참고Qiita의 이 발언.

좋은 웹페이지 즐겨찾기