如何在邮件中添加链接?

时间:2019-02-06 14:16:20

标签: android

首先,对不起我的语言。 我想显示一个对话框,其中包含以下消息:“您好,您的应用许可即将到期。点击“此处”并购买新许可!”,同时还具有“不再显示”按钮和“稍后提醒我”按钮。 我想使“这里”这个词可点击。当用户单击它时,我将他重定向到链接。例如https://stackoverflow.com/,谢谢您的关注!祝你有美好的一天=)

我尝试了这个,但是没有用。当显示对话框后,我点击“这里”时,没有任何反应。 我的对话框在这里

 AlertDialog.Builder alertLicenseExpire = new AlertDialog.Builder(TabActivity.this);
    alertLicenseExpire.setTitle(getString(R.string.dialog_warning_license_title));
    alertLicenseExpire.setMessage(String.format(getString(R.string.dialog_warning_license_exparation),getString(R.string.url_here)));
    alertLicenseExpire.setCancelable(false);
    alertLicenseExpire.setPositiveButton("remind me later", new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {

            handler.post(new Runnable() {
                @Override
                public void run() {
                    Toast.makeText(getApplicationContext(),"I am going to do something good..",Toast.LENGTH_SHORT).show();                    }
            });
        }
    });
    alertLicenseExpire.setNegativeButton("Do not show again", new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {
            handler.post(new Runnable() {
                @Override
                public void run() {
                    Toast.makeText(getApplicationContext(),"You won't see that massage again",Toast.LENGTH_SHORT).show();                    }
            });
        }
    });
    alertLicenseExpire.show();

这里是我的琴弦,

<string name="dialog_warning_license_title">Warning of License Expiration</string>

<string name="dialog_warning_license_exparation">Your license is about expire   In order to continue to use app, please click %s for purchase a new license.</string>

   <string name="url_here"><a href="https://stackoverflow.com/">here</a><string>

1 个答案:

答案 0 :(得分:0)

使用Linkify:

    TextView tv = (TextView) findViewById(R.id.sample_text);
    tv.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String msg = "https://www.google.com/";
            final SpannableString msgLink = new SpannableString(msg);
            Linkify.addLinks(msgLink, Linkify.ALL);

            final AlertDialog dialog = new AlertDialog.Builder(Tests.this)
                    .setPositiveButton(android.R.string.ok, null)
                    .setMessage( msgLink )
                    .create();

            dialog.show();

            ((TextView)dialog.findViewById(android.R.id.message)).setMovementMethod(LinkMovementMethod.getInstance());
        }
    });

P.S。好吧,我使用了textView来实现OnClickListener,但令人讨厌的是,您可以用任何您想做的事情做同样的事情,我对其进行了测试并成功了,祝您好运,继续编码!

来源: https://stackoverflow.com/a/3367392/10728976