我想要完成的任务:在DialogPreference显示的消息文本中创建一个clickabel超链接。
到目前为止我的解决方案:请按照以下主题进行操作:link,我完成了DialogPreference中显示的格式化超链接,但此超链接无法点击。
问题:如何在DialogPreference中点击超链接。
我的代码:
public class AboutDialog extends DialogPreference {
public AboutDialog(Context oContext, AttributeSet attrs)
{
super(oContext, attrs);
final SpannableString s = new SpannableString(oContext.getText(R.string.about_text));
Linkify.addLinks(s, Linkify.ALL);
this.setDialogMessage(s);
}}
答案 0 :(得分:2)
嗯,我不确定但是试试这个:
答案 1 :(得分:0)
这似乎有效
package net.anei.cadpage.preferences;
import android.content.Context;
import android.os.Bundle;
import android.text.SpannableString;
import android.text.method.LinkMovementMethod;
import android.text.util.Linkify;
import android.util.AttributeSet;
import android.view.View;
import android.widget.TextView;
public class DialogPreference extends android.preference.DialogPreference {
public DialogPreference(Context context, AttributeSet attrs) {
super(context, attrs);
}
public DialogPreference(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
protected View onCreateDialogView() {
final SpannableString s = new SpannableString(getDialogMessage());
Linkify.addLinks(s, Linkify.WEB_URLS);
final TextView view = new TextView(getContext());
view.setText(s);
view.setMovementMethod(LinkMovementMethod.getInstance());
return view;
}
}