Изменение цвета гиперссылки в AlertDialog
Нормальное это поведение не драматично, но на Samsung Galaxy S по умолчанию AlertDialog фон синий, и нормальная отформатированная ссылка (синяя) исчезает.
К сожалению, приведенный ниже код не меняет цвет ссылки.
У кого-нибудь есть идея?
public void showClickableDialog(String title, String msg) {
final SpannableString s = new SpannableString(msg);
Linkify.addLinks(s, Linkify.ALL);
final AlertDialog d = new AlertDialog.Builder(mContext)
.setPositiveButton(android.R.string.ok, null).setIcon(
R.drawable.logo).setTitle(title).setMessage(s).create();
d.show();
// Make the textview clickable. Must be called after show()
TextView textView = ((TextView) d.findViewById(android.R.id.message));
// Next Line unfortunately does nothing
textView.setTextColor(Color.MAGENTA);
textView.setBackgroundColor(Color.BLACK);
textView.setMovementMethod(LinkMovementMethod.getInstance());
}
Ответы
Ответ 1
У меня есть следующее в моем style.xml
, чтобы сделать ссылку оранжевой:
<item name="android:textColorLink">#FF9900</item>
Итак, я предполагаю, что в коде вам просто нужно это сделать (по какой-то причине имя несовместимо с свойством XML):
textView.setLinkTextColor(Color.MAGENTA);