2016-06-27 3 views
-1
<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <string name="legalText"> 

Используя это приложение XXXXXXXXXXX, я согласен с Условиями использования и Уведомление о конфиденциальности Политика [[необходимо официальное название]] в этом приложении. Я понимаю, что использование этого приложения xxxxxxxxx выполняется на свой страх и риск. Я понимаю и соглашаюсь с тем, что информация о здоровье, которую я даю xxxxxxx в этом приложении, является правдивой и будет единственным источником информации о здоровье, используемой поставщиками xxxxxxxxxx во время моей оценки и лечения через xxxxxxxxxx. Кроме того, в рамках моего использования приложения xxxxxxxx я согласен с тем, что я не буду использовать это приложение для каких-либо целей, которые запрещены условиями использования xxxxxxxx [[ссылка на термины]] и согласие с Telehealth [[Ссылка к Соглашению с Telehealth]] ", и согласие на оказание услуг по медицинскому обслуживанию [вставить ссылку в« Согласие на запрос медицинских услуг »).Как сделать строку кликабельным в Android

</string> 
</resources> 

Мне нужно поместить ссылки на другие страницы xml и html-страницы в скобках в этом XML-файле. Как мне это сделать?

ответ

2

Вот что вы можете сделать:.

  1. Перерыв, что одна строка в несколько строк ресурсов (по крайней мере отделить имя-приложения и ссылки на другую строку ресурса
  2. Contruct полную legalText путем присоединения подстроки .. находится в шаге 1. Используй <a href= "link"><a/> тег для подстрок с ссылкой вы можете стиль остальных подстрок соответственно, как вы получите идею
  3. Используйте метод Html.fromHtml, чтобы показать форматирование:

    Spannable text = (Spannable)Html.fromHtml(legalText); 
    
    //this one here to get the links clickable:   
    textView.setMovementMethod(LinkMovementMethod.getInstance()); 
    textView.setText(text); 
    
  4. Вам может понадобиться, чтобы избавиться от лишнего подчеркивания в этот момент, поэтому использовать этот метод:

    private void stripUnderlines(TextView textView) { 
        Spannable s = (Spannable)textView.getText(); 
        URLSpan[] spans = s.getSpans(0, s.length(), URLSpan.class); 
        for (URLSpan span: spans) { 
         int start = s.getSpanStart(span); 
         int end = s.getSpanEnd(span); 
         s.removeSpan(span); 
         span = new URLSpanNoUnderline(span.getURL()); 
         s.setSpan(span, start, end, 0); 
        } 
        textView.setText(s); 
    } 
    
2

Насколько я знаю, невозможно добавлять ссылки непосредственно в строки, но вы можете создавать разные строки и собирать текст с помощью разных текстовых элементов и устанавливать OnClickListeners и стиль ссылок на TextViews, которые вы хотите добавить ссылку ,

1

Если вы работаете в java и Android Studio, вам нужно установить onClickListener в TextView так же, как и для кнопки.

Вы также должны добавить стили, такие как подчеркивание или цвет, чтобы пользователь знал, что есть ссылка.

Смежные вопросы