iOS

Swiftの「UIActivityViewController」でTwitterにだけハッシュタグをつけたい!

投稿日:2017年10月16日 更新日:

はじめに

こんにちわ、nukkyです。
今回はSNSやメール連携したいときに便利な
「UIActivityViewController」を紹介したいと思います。
実は「UIActivityViewController」でのTwitter連携時のみに
ハッシュタグをつけたかったのですが
これが意外と難航したのでこちらも合わせて紹介したいと思います。

実装

まずはやってみよう

UIActivityViewControllerの使い方は実に簡単
・[Any]を用意してUIActivityViewControllerをインスタンス化
・presentViewControllerで呼び出す
以上です。
本当に最低限のコードだとこんな感じ

第一引数のactivityItemsですがこちらはAnyの配列が渡せます。
渡せる情報としては以下の三つになります。
・テキスト(String)
・URL(URL)
・画像(UIImage)
つまりURLや画像を渡したい場合は、items変数にURLやUIImageも一緒に入れてやればいいだけです。
さっきのコードにURLと画像を追加で渡す場合以下の様になります。

ただし連携先によっては渡した情報が表示されない(表示できない)こともあるので注意してください。

Twitter連携時のみにハッシュタグをつけたい

ここでTwitterのみハッシュタグをつけるやり方を紹介したいと思います。
使用するのは「UIActivityItemSource」です。
こちらはprotocolになっており、「UIActivityViewController」で
連携先を選択した際になにを選んだか確認できます。
とりあえず今回はテキスト(String)のパターンのみを考えて以下を作成しました。

単純に「activityType」からTwitterかどうかを判断し、
Twitterだった場合、returnにハッシュタグを付与しています。
上記の「UIActivityViewController」のサンプルコードの場合
以下の様に呼び出します。

これでTwitterのみハッシュタグをつけることができました!

 

さいごに

「UIActivityViewController」はものすごく簡単に実装できるので
ライトなアプリであればかなりオススメです。
今回はTwitterに対する特殊なアクションを組み込みましたが
このやり方を応用すれば色々できるかと思うので、
誰かのお役にたてれば嬉しいです。

blog-page_footer_336




blog-page_footer_336




-iOS
-

執筆者:


  1. noodlekim より:

    試して見たところFB共有の場合は効かないようです。

    • nukky より:

      コメントありがとうございます!
      FacebookはアプリからデフォルトのTextを入れてはダメというポリシーがあるようなので、Textは渡せない(渡さない)と考えたほうが良さそうです。
      ただ、画像の共有とハッシュタグの付与(ハッシュタグの付与は一つのみ)は可能なので以下のソースでそれらが可能です。

comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

iOS14のWidget機能を使ってみた。

1 はじめに2 Xcode 12 betaの入れ方3 WidgetExtensionの追加方法4 デフォルトのコード説明5 Configurationについて6 プロバイダー6.1 snapshot6 ...

[Swift]AlertControllerでメモリリークが起きた!便利なMemory Graph

1 はじめに2 今回の問題2.1 deinitの調査2.2 原因の調査3 解決策4 Memory Graphについて5 さいごに6 おすすめ書籍 はじめに こんにちは、suzukiです。この記事の結論 ...

swift

[Swift3] ScrollViewを使ってみた!

1 はじめに2 縦スクロール3 横スクロール4 横スライドでページング5 さいごに6 おすすめ書籍 はじめに どーもはじめです。 ずっと苦手意識というかあまり使いたくないイメージを持っていたのですが、 ...

[Swift]ループできるページングビューをUIScrollViewで作ってみた

1 はじめに1.1 前提条件2 ページングビューとは3 実装3.1 Storyboardの準備3.2 コードの実装4 仕組み5 さいごに はじめに こんにちは、nukkyです。 スライドショーやウォー ...

swift

iOSで画像の任意の場所をぼかし処理する方法

1 はじめに1.1 前提条件2 準備3 実装3.1 ぼかし処理のイメージ画像3.2 サンプルコード4 さいごに はじめに iOSで写真の任意の場所にぼかし処理をしたいケースがありましたので、 iOSで ...

フォロー

blog-page_side_responsive

2017年10月
1234567
891011121314
15161718192021
22232425262728
293031  

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。