在 Android App 的 AlertDialog window 中使 link 可点击
Make a link clickable in AlertDialog window in Android App
我需要在 AlertDialog window 中通过 onPostExecute 方法打开一个 link(仅当我点击它时)(例如:https://en.wikipedia.org/wiki/Quantico_(TV_series)):
@Override
protected void onPostExecute(String result) {
String res=result.replace("^", "\n");
String link=result.substring(result.indexOf("[") + 1, result.indexOf("]"));
res=res.replaceAll("[.*?]", "");
res=res.replace("[", "");
res=res.replace("]","");
alertDialog.setMessage(res+link);
alertDialog.show();
//System.out.println("RESULT FOUND ===>> "+ res);
//UtilityFunct.list.clear();
}
这是我的 Nexus 5X 上的输出示例:
我已经使用 "replace" 来隔离我需要使其可点击的 link。
我已经尝试了很多我在 Whosebug 中找到的方法,但没有一个有效。
我该怎么办?可能吗?
谢谢
尝试使用以下代码
TextView message = new TextView(YourClass.this);
SpannableString s = new SpannableString("Text with like http://yoursite.com"");
Linkify.addLinks(s, Linkify.WEB_URLS);
message.setText(s);
message.setMovementMethod(LinkMovementMethod.getInstance());
alertDialog.setView(message);
alertDialog.show();
我需要在 AlertDialog window 中通过 onPostExecute 方法打开一个 link(仅当我点击它时)(例如:https://en.wikipedia.org/wiki/Quantico_(TV_series)):
@Override
protected void onPostExecute(String result) {
String res=result.replace("^", "\n");
String link=result.substring(result.indexOf("[") + 1, result.indexOf("]"));
res=res.replaceAll("[.*?]", "");
res=res.replace("[", "");
res=res.replace("]","");
alertDialog.setMessage(res+link);
alertDialog.show();
//System.out.println("RESULT FOUND ===>> "+ res);
//UtilityFunct.list.clear();
}
这是我的 Nexus 5X 上的输出示例:
我已经使用 "replace" 来隔离我需要使其可点击的 link。 我已经尝试了很多我在 Whosebug 中找到的方法,但没有一个有效。
我该怎么办?可能吗? 谢谢
尝试使用以下代码
TextView message = new TextView(YourClass.this);
SpannableString s = new SpannableString("Text with like http://yoursite.com"");
Linkify.addLinks(s, Linkify.WEB_URLS);
message.setText(s);
message.setMovementMethod(LinkMovementMethod.getInstance());
alertDialog.setView(message);
alertDialog.show();