Jump to content

[TfgLabel] Не применяется цвет LinkColor для отображения ссылки


Recommended Posts

Хочу сделать текстовую метку TfgLabel - ссылкой.
Выставляю свойство LinksTypes.WebLinks := True.

При загрузке приложения в телефон, текст метки не виден, белый.
При нажатии на нее идет переход по адресу ссылки, ссылка работает, но подпись, которая в TfgLabel.Text не отображается.

Если свойство LinksTypes.WebLinks := False, убрать ссылку и оставить простую текстовую метку, при загрузке приложения в телефон она видна.
Как сделать, чтобы текстовая метка TfgLabel была ссылкой, и текст метки отображался установленным цветом? 

fgLabel.png

Link to comment
Share on other sites

  • Administrators

Вы все правильно делаете. Но я не могу воспроизвести ошибку.

Вот прикрепляю проект, на котором я тестировал. Возможно у вас есть еще что-то дополнительное, что может на это влиять. Поэтому было бы здорово, если бы вы прикрепили тестовый проект, где воспроизводится, описанная проблема.

LabelLinkDemo.zip

Link to comment
Share on other sites

Запустил ваш "LabelLinkDemo.zip". Тоже, в текстовой метке при "LinksTypes.WebLinks := True" текст метки не отображается.

Если в текстовой метке убираю это свойство "LinksTypes.WebLinks := False", то текст метки отображается.

Записал я загрузку проекта в телефон на видео: 

Возможно у меня телефон древний: "Xiaomi Redmi Note 3 Pro":

 

Screenshot_2020-01-23-00-50-57-699_com.android.settings.png

Link to comment
Share on other sites

Отозвался ваш проект. 

Когда нажимаю на место текстовой метки, она окрашивается цветом fgLabel.LinkColor и идет переход по адресу ссылки, после возвращения в приложение ссылка уже видна. Похоже fgLabel подхватывает цвет только в момент обращения к ней.

Если в текстовой метке свойство LinksTypes.WebLinks := False, то она "не кликабельна", в fgLabel применяется цвет fgLabel.Color.

Когда мы присваиваем свойство LinksTypes.WebLinks := True, то она становится "кликабельна", ожидает нажатия на себя, но fgLabel еще не применяет цвет fgLabel.LinkColor, и уже не применяет цвет fgLabel.Color. (цвету текста метки присваивается цвет фона).

И только когда мы нажмем на нее, по нажатию переопределяется цвет метки на fgLabel.LinkColor. 

 

Edited by Александр Клопоцкий
Link to comment
Share on other sites

  • 1 month later...
  • Administrators
В 23.01.2020 в 08:19, Александр Клопоцкий сказал:

Когда нажимаю на место текстовой метки, она окрашивается цветом fgLabel.LinkColor и идет переход по адресу ссылки, после возвращения в приложение ссылка уже видна. Похоже fgLabel подхватывает цвет только в момент обращения к ней.

К такому поведению приводит сочетание некоторых свойств нативного контрола,  и с очень большой вероятностью это баг в самом андроиде.

Пока, как временное решение, могу предложить выставить свойство TfgLabel.LineBreak в  TfgTextLineBreak.CharacterWrap или TfgTextLineBreak.WordWrap (по умолчанию  TfgTextLineBreak.None).

  • Thanks 2
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...