2016-07-12 10 views
0

アンドロイドの共有の目的でユーザーがURLにナビゲートするテキストをクリックして共有したいと考えています。例えばテキストインテントでテキストリンクを共有するには?

は "詳細はgoogleをご覧ください。"

上記のテキストでは、googleをクリックすると、ユーザーはgoogle.comにリダイレクトされます。私はユーザーに完全なURLを示す代わりに、このようなものを実現する必要があります。私が試したことは、hrefとは何の関係もないhtmlリンクを作ることです。

だから、どうすればいいですか?シェア意図を呼び出すための

使用テキストビューの選択と長押しのリスナー:

答えて

0

はこのようにしてみてください。それ以外の場合は、Androidのspannable textviewを使用することができます。

は、Google検索とspannableのTextViewのために、このリンクを参照してください:http://androidcocktail.blogspot.in/2014/03/android-spannablestring-example.html

Uri uri = Uri.parse("http://www.google.com/#q=selected word here"); 
Intent intent = new Intent(Intent.ACTION_VIEW, uri); 
startActivity(intent); 
+0

これは共有目的ではありません。私はテキストを共有し、ブラウザ上で直接開く必要はありません。 –

1

あなたは、plain textすなわちようなタイプを使用している必要があります。

intent.setType("text/plain"); 

は、このようにHTMLに種類を設定します。

intent.setType("text/html"); 

となります。

だから、あなたはHTMLテキストを共有するためにこれを使用することができます:

String textToShare = "Visit <a href=\"http://www.google.com\">google</a> for more info."; 
Intent intent = new Intent(android.content.Intent.ACTION_SEND); 

intent.setType("text/html"); 
intent.putExtra(Intent.EXTRA_SUBJECT, "sample"); 
intent.putExtra(Intent.EXTRA_TEXT, Html.fromHtml(textToShare)); 

startActivity(Intent.createChooser(intent, "Share")); 

OUTPUT

はここでGmailアプリからのスクリーンショットです:

Screenshot from Gmail app

+0

共有するwhatsapまたはfbメッセンジャーは表示されません。 :/ –

+0

はい、彼らは 'html' MIMEタイプ –

+0

を受け入れないので、あなたはそのようなアプリでこれを行うことはできませんが、あなたはGmailのような電子メールアプリケーションでこれを行うことができます。 –

2

Visit google

hrefタグ を使用し、テキストをHtml.fromHtml();と設定し、テキストビューに設定します。

+0

申し訳ありませんが、より明確にしてください。 –

+0

あなたは私が言ったことを試しました –

+0

はい。それは上記の答えと同じです。 whasapやfbメッセンジャー経由でコンテンツを共有することはできません。 –

関連する問題