如何设置链接网址+可点击的文字

时间:2013-02-02 18:35:38

标签: android textview android-alertdialog

我正在尝试设置链接网址并链接以启动其他活动。 这里我的代码,它使用HTML链接,但不知道如何做链接,将启动其他活动。

我的代码示例:

final AlertDialog d = new AlertDialog.Builder(this)
            .setPositiveButton(android.R.string.ok, null)
            .setMessage(Html.fromHtml(getResources().getString(R.string.infoAuthor)+" <br> <a href=\"https://www.youtube.com">click here for help</a>"))
            .create();
            d.show();
            // Make the textview clickable. Must be called after show()   
            ((TextView)d.findViewById(android.R.id.message)).setMovementMethod(LinkMovementMethod.getInstance());

如果你能给出一些代码怎么做。

2 个答案:

答案 0 :(得分:0)

尝试查看此post。作者用来完成此任务的代码是:

public static class MyOtherAlertDialog {

 public static AlertDialog create(Context context) {
  final TextView message = new TextView(context);
  // i.e.: R.string.dialog_message =>
            // "Test this dialog following the link to dtmilano.blogspot.com"
  final SpannableString s = 
               new SpannableString(context.getText(R.string.dialog_message));
  Linkify.addLinks(s, Linkify.WEB_URLS);
  message.setText(s);
  message.setMovementMethod(LinkMovementMethod.getInstance());

  return new AlertDialog.Builder(context)
   .setTitle(R.string.dialog_title)
   .setCancelable(true)
   .setIcon(android.R.drawable.ic_dialog_info)
   .setPositiveButton(R.string.dialog_action_dismiss, null)
   .setView(message)
   .create();
 }
}

同一篇文章中对上一个人的另一种观点是:

   // Linkify the message
    final SpannableString s = new SpannableString(msg);
    Linkify.addLinks(s, Linkify.ALL);

    final AlertDialog d = new AlertDialog.Builder(activity)
        .setPositiveButton(android.R.string.ok, null)
        .setIcon(R.drawable.icon)
        .setMessage( s )
        .create();

    d.show();

    // Make the textview clickable. Must be called after show()
    ((TextView)d.findViewById(android.R.id.message)).setMovementMethod(LinkMovementMethod.getInstance());

答案 1 :(得分:0)

布局xml中的

       <TextView
        android:id="@+id/description"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"           
        android:autoLink="web|phone|email"           
        android:text="" />

网络到网址,电话和电子邮件

您也可以更改颜色  机器人:textColorLink = “@颜色/ linkscolor”

从xml中扩展您的视图并使用setView方法设置对话框视图