Я хотел бы определить Android TextView в XML, который содержит текст, который является ссылкой на URL - PullRequest
2 голосов
/ 02 апреля 2011

Я хотел бы определить TextView в XML, который содержит текст, который является ссылкой на URL.По сути, семантика якорного HTML-тега: <a>

Я смог сделать большую часть того, что я хочу, с атрибутом android:autoLink="web" для TextView.Тем не менее, текст должен содержать URL, и он отображается для пользователя.Я хотел бы отобразить другой текст, который ссылается на URL.

Пример: я могу сказать,

<TextView android:text="http://foo.com" android:autoLink="web">

Но тогда пользователь видит: "http://foo.com". Я бы скорее сказалчто-то еще, например "bar".

Я попытался определить строку в строковом ресурсе и использовать ссылку, например

<string name="test"><a href="foo.com">bar</a></string>

Строка отображается правильно отформатированной, но вы не можете нажатьна нем.

1 Ответ

2 голосов
/ 23 июня 2011

Если вы используете HTML в strings.xml для вашего TextView, не используйте autoLink.

Вместо этого в onCreate установите метод перемещения для использования ссылок:

    TextView msg = (TextView) findViewById(R.id.text);
    msg.setMovementMethod(LinkMovementMethod.getInstance());

Я думаю, что автоссылка предназначена для динамической установки текста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...