Каков наилучший способ достижения эффекта при наведении курсора css над меткой или переключателем класса css при нажатии метки в nativescript (угловой) - PullRequest
0 голосов
/ 06 апреля 2019

Кажется, что стиль CSS hover не поддерживается в nativescript (угловой).Итак, как я могу изменить класс метки, когда мышь наведена?Что-то вроде этого, но оно не работает ...

<Label text="Restricted" class="sideLabel" [ngStyle]="{backgroundColor: hover==true  ? 'lightgrey' : 'grey' }" ></Label>

Также меня интересует событие onTap, как переключать класс при нажатии метки и как переключаться на класс по умолчанию при отпускании метки ...

На данный момент в шаблоне:

<Label class="sideLabel" (touch)="onTouch($event)" text="AAAAAAAAAAA" ></Label>

и в файле .ts:

  onTouch(args: TouchGestureEventData) {
console.log(args.action);
let label:Label;
label = <Label>args.object
switch (args.action) {
  case 'up':
    label.cssClasses.delete("pressed");
    break;
  case 'down':
    console.log(args.object)
    label.cssClasses.add("pressed");
    break;
  default:
    break;
}}

CSS

.pressed {
color: blue;
}

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

1 Ответ

1 голос
/ 08 апреля 2019

Вы не видите никаких изменений, потому что вы изменяете только классы Set, но не уведомляете об этом NativeScript (_onCssStateChange метод).

Bub в вашем случае, я думаю, что лучше использовать addPseudoClass / deletePseudoClass методы на метке (которые уведомляют NativeScript об изменении псевдокласса) - Пример игровой площадки .

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