Чтобы получить TextView
для отображения (и взаимодействия с) строк Html, мой код выглядит примерно так:
// itemHtml is a String of HTML defined above
TextView itemContent = (TextView) findViewById(R.id.itemContent);
itemContent.setText(Html.fromHtml(itemHtml));
itemContent.setMovementMethod(LinkMovementMethod.getInstance());
Если в строке Html есть ссылка, TextView
приводит к ссылкам, которые можно щелкнуть и сфокусировать. Когда пользователь фокусируется на определенной ссылке (например, с помощью d-pad), текст ссылки изменяется в некоторых значительных способ показать, что фокус был получен.
Проблема в том, что когда я тестирую этот же шаблон с помощью устройств с d-pad, использующих Honeycomb (например, Google TV) или Android Ice Cream Sandwich, ссылка в тексте показывает нет заметных признаков того, что ссылка находится в фокусе.
Я знаю, что она получает фокус, потому что, когда вы затем нажимаете Enter, она выполняет указанное действие п. Вы даже можете перемещаться между различными ссылками в тексте; вам остается только гадать, по какой ссылке вы сейчас находитесь, что приводит к очень плохому взаимодействию с пользователем.
Я что-то делаю не так? Есть ли способ исправить это или обойти это?