4

NSURL を使用して UIActivityViewController にリンクを添付するときに、(エンボス加工された Safari アイコンではなく) クリップの下にデフォルトのサムネイルを設定するものを見つけようとしています。Google や iTunes ストアなどの Web サイトで、これらのサムネイルを役立つ画像として設定しているのを見たような気がします。エンボス加工された Safari アイコンが曖昧すぎて、ユーザーがどのリンクを送信しているのかわからないように感じます。

おそらく、そのリンクの html ヘッダーに何かありますか?

ありがとう!

あいまいなサファリ アイコン

4

2 に答える 2

3

最近、すべてのUIActivityViewController文書を解読しなければなりませんでした。おそらく、サムネイルとして使用されることを盲目的に期待してUIImageを含めたくないでしょう。NSURL私が理解しているように、UIActivityが画像をどうするかはわかりません.URLの代わりにそれを投稿するかもしれません.

activityItems 配列パラメータでinitWithActivityItems:applicationActivities:、 の代わりに、プロトコルNSURLに準拠して作成したオブジェクトを渡します。たとえば、このプロトコルに準拠するオブジェクトであるUIActivityItemSourceコントローラーを開くことができます。この場合、 activityItems パラメーターは.UIActivityViewController@[self]

必要な 2 つのメソッドを実装し、activityViewControllerPlaceholderItem:両方activityViewController:itemForActivityType:とも単に を返すだけNSURLでなく、これを実装して好きなサムネイル画像を返します。

- (UIImage *)activityViewController:(UIActivityViewController *)activityViewController thumbnailImageForActivityType:(NSString *)activityType suggestedSize:(CGSize)size;

activityItems 配列に複数のオブジェクトが本当に必要であり、それを更新してUIActivityItemSource(またはUIActivityItemProvider) オブジェクトを使用する場合、元のそれぞれを返すために個別のそのようなオブジェクトが必要です。元の配列のデータ オブジェクト。たとえば、データ項目がNSURLと のUIImage場合、1 つUIActivityItemSourceを を返し、NSURLもう 1 つを を返しUIImageます。元の activityItems 配列のような配列をUIActivityItemSource返すものを持つことは機能しません。NSURLUIImage

于 2014-05-06T23:17:49.360 に答える
0

派生した UIActivity オブジェクトの activityImage プロパティを、クリップの下に表示したい画像に設定しようとしましたか?

UIActivityTypePostToTwitter の場合: オブジェクトは、提供されたコンテンツをユーザーの Twitter フィードに投稿します。このサービスを使用する場合、NSString、NSAttributedString、UIImage、AVAsset、および NSURL オブジェクトをアクティビティ項目のデータとして提供できます。 assets-library スキームを使用してください。」

UIActivityViewController に渡される配列に含めることができる UIImage オブジェクトに注意してください。このリンクは、 activityImage プロパティの詳細について説明しています

ケビン

于 2013-03-16T20:18:03.753 に答える