Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
Severomor
2 / 2 / 0
Регистрация: 09.01.2014
Сообщений: 15
#1

Почему в EditText не работает html тэг <strike>? - Программирование Android

16.01.2014, 21:04. Просмотров 1453. Ответов 5
Метки нет (Все метки)

Добрый вечер,
Почему не работает конструкция:

Java
1
2
Spanned s= Html.fromHtml("<strike>my test text</strike>");
                        editText.setText(s);
<b>,<i> работают, а strike нет! (
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.01.2014, 21:04     Почему в EditText не работает html тэг <strike>?
Посмотрите здесь:

Быстродействие EditText при работе с html - Программирование Android
Есть EditText, в него загружается текст с html разметкой. Проблема в том, что он страшно тупит при попытке внести в него любые изменения....

Не работает Html.fromHtml() - Программирование Android
AppCompatTextView textView = ...; textView .setText(Html.fromHtml(&quot;&lt;b&gt;&quot;+getString(R.string.werefrom_text)+&quot;:&lt;/b&gt; &quot;+addressFrom +&quot;&lt;br...

Почему работает? - Программирование Android
Всем привет. Недавно начал изучать Android, и вот возник вопрос. Пишу в Eclips'е, при создании проекта создается две папки appcompat_v7 и...

Не работает код получения html - Программирование Android
Здравствуйте. Пытаюсь освоить работу с интернетом. В коде происходит что-то странное и не понятное для меня)) Подскажите, пожалуйста,...

Почему не работает setTop() - Программирование Android
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ...

Почему .setBackground не работает? - Программирование Android
У меня кнопки представляют собой TextView'ы, на которых по умолчанию выставлены соотв. рисунки, но при попытке изменить их(на любые) при...

Почему не работает GET запрос? - Программирование Android
Maxens, А что происходит? Ошибка? Исключение?

Почему WebView не работает - Программирование Android
Скажите в чём дело не так вот прикрепил скриншот:

Почему оператор сравнения не работает? - Программирование Android
Здравствуйте, Простой вопрос, очень простой, но ввел в ступор Есть стринговая переменная, которая берется из текстового поля....

Почему здесь не работает Intent? - Программирование Android
Intent берет значение по умолчанию, а не то, которое в классе Touch подскажите почему? package ru.lkja.fx; import java.util.Timer;...

Дизайн EditText - Программирование Android
Приветствую,снова) Возник вопрос по дизайну,так скажем.Вот фотография: http://i.imgur.com/pNrnE0r.jpg Как вы могли...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
angryrobot
Командир зеленых роботов
346 / 283 / 53
Регистрация: 08.10.2013
Сообщений: 564
16.01.2014, 21:47     Почему в EditText не работает html тэг <strike>? #2
Цитата Сообщение от Severomor Посмотреть сообщение
Почему не работает конструкция
Поддерживаются далеко не все теги. Если верит интернету, то Html.fromHtml понимает следующие теги:
Кликните здесь для просмотра всего текста
<a> (supports attribute "href")
<b>
<big>
<blockquote>
<br>
<cite>
<dfn>
<div>
<em>
<font> (supports attributes "color" and "face")
<i>
<img> (supports attribute "src". Note: you have to include an ImageGetter to handle retrieving a Drawable for this tag)
<p>
<small>
<strong>
<sub>
<sup>
<tt>
<u>

Но при этом перечеркнутый текст можно хранить в виде строкового ресурса. В строковых ресурсах поддерживаются следующие теги:
Кликните здесь для просмотра всего текста
<a> (supports attributes "href")
<annotation>
<b>
<big>
<font> (supports attributes "height", "size", "fgcolor" and "bicolor", as integers)
<i>
<li>
<marquee>
<small>
<strike>
<sub>
<sup>
<tt>
<u>

Вот ссылка на источник http://daniel-codes.blogspot.ru/2011...textviews.html
Severomor
2 / 2 / 0
Регистрация: 09.01.2014
Сообщений: 15
16.01.2014, 21:53  [ТС]     Почему в EditText не работает html тэг <strike>? #3
Цитата Сообщение от angryrobot Посмотреть сообщение
Но при этом перечеркнутый текст можно хранить в виде строкового ресурса. В строковых ресурсах поддерживаются следующие теги:
А чем это поможет? Если html-строку просто засунуть в EditText, он тэги не понимает.
angryrobot
Командир зеленых роботов
346 / 283 / 53
Регистрация: 08.10.2013
Сообщений: 564
16.01.2014, 22:11     Почему в EditText не работает html тэг <strike>? #4
Цитата Сообщение от Severomor Посмотреть сообщение
Если html-строку просто засунуть в EditText, он тэги не понимает.
Конечно не понимает, строку надо засовывать в строковый ресурс. А потом в EditText указать на него ссылку.
Содержимое файла res\strings.xml
XML
1
2
3
4
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="strikedText">Меня <strike>зачеркнули</strike></string>
</resources>
Содержимое layout файла
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
 
    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:text="@string/strikedText"
        android:textAppearance="?android:attr/textAppearanceLarge" />
 
</RelativeLayout>
Результат
Почему в EditText не работает html тэг <strike>?

UPD. У меня тут используется TextView, но и с EditText проблем нет.
Severomor
2 / 2 / 0
Регистрация: 09.01.2014
Сообщений: 15
16.01.2014, 22:27  [ТС]     Почему в EditText не работает html тэг <strike>? #5
angryrobot,
Спасибо, но это мне наверно не подойдет. Мне надо на лету. То есть взять строку из EditText, кусок ее зачеркнуть и вставить обратно.
Хотел использовать SpannableStringBuilder, попробовал, он работает, но там другая беда - мне отформатированные строки надо же еще сохранять в файле, а там замучаешься это делать.
Блин, вот подстава, им что, трудно было включить поддержку <strike> в html!
angryrobot
Командир зеленых роботов
346 / 283 / 53
Регистрация: 08.10.2013
Сообщений: 564
16.01.2014, 23:04     Почему в EditText не работает html тэг <strike>? #6
Пардон, не сразу дочитал ваше сообщение до конца, а удалить уже не могу
Цитата Сообщение от Severomor Посмотреть сообщение
Мне надо на лету.
Да это тоже не проблема
Java
1
2
3
4
5
6
7
8
9
10
11
12
public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        SpannableStringBuilder sp = new SpannableStringBuilder("Текст перечеркнут");
        //Перечеркивать с 6-го по 17-й символ
        sp.setSpan(new StrikethroughSpan(), 6, 17, SpannableStringBuilder.SPAN_EXCLUSIVE_EXCLUSIVE);
        EditText et = (EditText) findViewById(R.id.editText1);
        et.setText(sp);
    } 
}
Добавлено через 3 минуты
Цитата Сообщение от Severomor Посмотреть сообщение
Блин, вот подстава, им что, трудно было включить поддержку <strike> в html!

Не по теме:

Действительно очень не предусмотрительно с их стороны

Yandex
Объявления
16.01.2014, 23:04     Почему в EditText не работает html тэг <strike>?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru