Класс Transition
- Прямые известные подклассы:
-
FadeTransition,FillTransition,ParallelTransition,PathTransition,PauseTransition,RotateTransition,ScaleTransition,SequentialTransition,StrokeTransition,TranslateTransition
public abstract class Transition
extends Animation Transition, таких как PathTransition и RotateTransition. Этот класс предлагает простую структуру для определения анимации. Он предоставляет все базовые функциональные возможности, определённые в Animation. Класс Transition требует реализации метода interpolate(double), который вызывается в каждом кадре во время выполнения анимации.
Кроме того, расширяющий класс должен установить продолжительность одного цикла с помощью Animation.setCycleDuration(javafx.util.Duration). Эта продолжительность обычно устанавливается пользователем через свойство продолжительности (как в duration), например. Но её также можно рассчитать расширяющим классом, как это сделано в ParallelTransition и FadeTransition.
Ниже представлен простой пример. Он создаёт небольшую анимацию, обновляющую свойство text узла Text. Она начинается с пустого String и постепенно добавляет буквы по одной, пока не будет установлен полный String по завершении анимации.
final String content = "Lorem ipsum";
final Text text = new Text(10, 20, "");
final Animation animation = new Transition() {
{
setCycleDuration(Duration.millis(2000));
}
protected void interpolate(double frac) {
final int length = content.length();
final int n = Math.round(length * (float) frac);
text.setText(content.substring(0, n));
}
};
animation.play();
- С:
- JavaFX 2.0
- См. также:
Animation
Краткое описание свойств
| Тип | Свойство | Описание |
|---|---|---|
ObjectProperty<Interpolator> | interpolator | Управляет временем ускорения и замедления на каждом цикле Transition. |
Свойства, объявленные в классе javafx.animation.Animation
autoReverse, currentRate, currentTime, cycleCount, cycleDuration, delay, onFinished, rate, status, totalDuration
Краткое описание вложенных классов
Вложенные классы/интерфейсы, объявленные в классе javafx.animation.Animation
Animation.Status
Краткое описание полей
Поля, объявленные в классе javafx.animation.Animation
INDEFINITE
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
Transition() | Конструктор Transition. |
Transition(double targetFramerate) | Конструктор Transition. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
protected Interpolator | getCachedInterpolator() | Возвращает Interpolator, который был установлен при запуске Transition. |
Interpolator | getInterpolator() | Возвращает значение свойства interpolator. |
protected Node | getParentTargetNode() | Возвращает первый целевой Node, не являющийся null, в иерархии родителей данного Transition, или null, если такой узел не найден. |
protected abstract void | interpolate(double frac) | Метод interpolate() должен быть реализован подклассами Transition. |
ObjectProperty<Interpolator> | interpolatorProperty() | Управляет временем ускорения и замедления на каждом цикле Transition. |
void | setInterpolator(Interpolator value) | Устанавливает значение свойства interpolator. |
Методы, объявленные в классе javafx.animation.Animation
autoReverseProperty, currentRateProperty, currentTimeProperty, cycleCountProperty, cycleDurationProperty, delayProperty, getCuePoints, getCurrentRate, getCurrentTime, getCycleCount, getCycleDuration, getDelay, getOnFinished, getRate, getStatus, getTargetFramerate, getTotalDuration, isAutoReverse, jumpTo, jumpTo, onFinishedProperty, pause, play, playFrom, playFrom, playFromStart, rateProperty, setAutoReverse, setCycleCount, setCycleDuration, setDelay, setOnFinished, setRate, setStatus, statusProperty, stop, totalDurationProperty
Подробное описание свойств
интерполятор
public final ObjectProperty<Interpolator> interpolatorProperty
Transition цикле. Это свойство можно изменить только до начала перехода или после его завершения. Если значение interpolator изменяется для выполняющегося Transition, анимация должна быть остановлена и запущена заново, чтобы использовать новое значение.
По умолчанию интерполятор установлен на Interpolator.EASE_BOTH.
- Значение по умолчанию:
- EASE_BOTH
- См. также:
-
getInterpolator(),setInterpolator(Interpolator)
Подробное описание конструкторов
Переход
public Transition(double targetFramerate)
Transition. Этот конструктор позволяет определить target framerate.- Параметры:
-
targetFramerate- Пользовательская целевая частота кадров для этогоTransition
Переход
public Transition()
Transition.Подробное описание методов
setInterpolator
public final void setInterpolator(Interpolator value)
- Описание свойства:
- Управляет временной шкалой ускорения и замедления на каждом
Transitionцикле.Это свойство можно изменить только до начала перехода или после его завершения. Если значение
interpolatorизменяется для выполняющегосяTransition, анимация должна быть остановлена и запущена заново, чтобы использовать новое значение.По умолчанию интерполятор установлен на
Interpolator.EASE_BOTH. - Значение по умолчанию:
- EASE_BOTH
getInterpolator
public final Interpolator getInterpolator()
- Описание свойства:
- Управляет временной шкалой ускорения и замедления на каждом
Transitionцикле.Это свойство можно изменить только до начала перехода или после его завершения. Если значение
interpolatorизменяется для выполняющегосяTransition, анимация должна быть остановлена и запущена заново, чтобы использовать новое значение.По умолчанию интерполятор установлен на
Interpolator.EASE_BOTH. - Значение по умолчанию:
- EASE_BOTH
interpolatorProperty
public final ObjectProperty<Interpolator> interpolatorProperty()
Transition цикле. Это свойство можно изменить только до начала перехода или после его завершения. Если значение interpolator изменяется для выполняющегося Transition, анимация должна быть остановлена и запущена заново, чтобы использовать новое значение.
По умолчанию интерполятор установлен на Interpolator.EASE_BOTH.
- Значение по умолчанию:
- EASE_BOTH
- См. также:
-
getInterpolator(),setInterpolator(Interpolator)
getCachedInterpolator
protected Interpolator getCachedInterpolator()
Interpolator, который был установлен при запуске Transition. Изменение interpolator выполняющегося Transition не должно иметь немедленного эффекта. Вместо этого выполняющийся Transition должен продолжить использовать исходный Interpolator до тех пор, пока он не будет остановлен и запущен повторно.- Возвращает:
- интерполятор, который был установлен при запуске этого
Transition
getParentTargetNode
protected Node getParentTargetNode()
null целевой Node в родительской иерархии этого Transition, или null, если такой узел не найден. Родительская анимация — это анимация, которая может иметь дочерние анимации. Примеры — SequentialTransition и ParallelTransition. Родительская анимация также может быть дочерней частью другой родительской анимации.
Обратите внимание, что если у этого Transition установлен целевой узел и он не является родительской анимацией, он будет проигнорирован во время вызова, так как этот метод запрашивает только родительские анимации.
- Возвращает:
- целевой узел
interpolate
protected abstract void interpolate(double frac)
interpolate() должен быть предоставлен реализациями Transition. Пока выполняется Transition, этот метод вызывается в каждом кадре. Параметр определяет текущее положение с анимацией. В начале фракция будет 0.0, а в конце — 1.0. Как изменяется параметр, зависит от interpolator, например, если interpolator является Interpolator.LINEAR, фракция будет увеличиваться линейно. Этот метод не должен вызываться пользователем напрямую.- Параметры:
-
frac- Относительное положение
© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.