-
- 参数类型
-
T
- 包装值的类型
- All Superinterfaces:
-
Observable
,ObservableValue<T>
- All Known Subinterfaces:
-
NumberBinding
- 所有已知实现类:
-
BooleanBinding
,DoubleBinding
,FloatBinding
,IntegerBinding
,ListBinding
,LongBinding
,MapBinding
,ObjectBinding
,SetBinding
,StringBinding
public interface Binding<T> extends ObservableValue<T>
ABinding
计算取决于一个或多个来源的值。 源通常被称为绑定的依赖。 绑定观察其依赖关系进行更改,并自动更新其值。虽然绑定的依赖可以是任何东西,但它几乎总是执行
ObservableValue
。Binding
实现ObservableValue
允许在另一个绑定中使用它。 由此可以通过简单的绑定来组合非常复杂的绑定。JavaFX运行时间中的所有绑定都是懒惰的计算。 这意味着,如果依赖关系更改,绑定的结果不会立即重新计算,而是被标记为无效。 下次无效绑定的值被请求时,重新计算。
建议使用此包中定义的基类之一(例如
DoubleBinding
)来定义自定义绑定,因为这些类已经提供了大部分所需的功能。 参见DoubleBinding
的一个例子。- 从以下版本开始:
- JavaFX 2.0
- 另请参见:
-
DoubleBinding
-
-
方法摘要
所有方法 接口方法 抽象方法 Modifier and Type 方法 描述 void
dispose()
信号到Binding
,它将不再被使用,任何引用都可以被删除。ObservableList<?>
getDependencies()
返回不可修改的绑定的依赖关系ObservableList
。void
invalidate()
将绑定标记为无效。boolean
isValid()
检查绑定是否有效。-
Methods inherited from interface javafx.beans.Observable
addListener, removeListener
-
Methods inherited from interface javafx.beans.value.ObservableValue
addListener, getValue, removeListener
-
-
-
-
方法详细信息
-
isValid
boolean isValid()
检查绑定是否有效。- 结果
-
true
如果Binding
有效,则false
否则
-
invalidate
void invalidate()
将绑定标记为无效。 这迫使重新计算Binding
下一次请求的值。
-
getDependencies
ObservableList<?> getDependencies()
返回绑定在不可修改的依赖关系ObservableList
。 实施是可选的。 这种方法的主要目的是在开发过程中支持开发人员。 它允许在运行时期间探索和监视绑定的依赖关系。因为这种方法不应该在生产代码中使用,所以建议将此功能尽可能稀疏化。 例如,如果依赖关系不变,每个调用都可以生成新的
ObservableList
,避免存储结果的必要性。- 结果
- 一个不可修改的ObservableList依赖关系
-
dispose
void dispose()
信号到Binding
它将不再被使用,任何引用可以被删除。 这种方法的调用通常导致绑定停止以通过取消注册其监听器来观察其依赖关系。 实施是可选的。我们实现中的所有绑定使用
WeakInvalidationListener
的实例,这意味着通常不需要处理绑定。 但是,如果您打算在不支持WeakReferences
环境中使用应用程序,则必须处理未使用的Bindings
以避免内存泄漏。
-
-