|
Spec-Zone .ru
спецификации, руководства, описания, API
|
E - тип элементов содержится в Спискеpublic abstract class ObservableListBase<E> extends java.util.AbstractList<E> implements ObservableList<E>
ObservableList реализации. Основной class обеспечивает две функциональности для классов с реализацией. addListener и removeListener методы. fireChange(javafx.collections.ListChangeListener.Change) метод обеспечивается для того, чтобы он уведомил слушателей с a Change объект. ListChangeListener.Change объект. Есть различные вызванные методы next*, как nextAdd(int, int) для новых элементов в списках или nextRemove(int, java.lang.Object) для элемента, удаляемого из списка. В эти методы нужно всегда включать beginChange() и endChange() блок.
См. пример ниже.
public void removeOddIndexes() {
beginChange();
try {
for (int i = 1; i < size(); ++i) {
remove(i);
}
} finally {
endChange();
}
}
public void remove(int i) {
beginChange();
try {
E removed = ... //do some stuff that will actually remove the element at index i
nextRemove(i, removed);
} finally {
endChange();
}
}
try/finally блоки в примере необходимы, только если есть возможность для исключения, чтобы произойти внутри a beginChange() / endChange() блок Отметьте: Если Вы хотите создать поддающийся изменению ObservableList реализация, рассмотреть использование ModifiableObservableListBase как суперкласс.
Отметьте: Чтобы создать список с последовательным доступом, следует переопределить AbstractList.listIterator(), AbstractList.iterator() методы и используют их в AbstractList.get(int), AbstractCollection.size() и другие методы соответственно.
ObservableList, ListChangeListener.Change, ModifiableObservableListBase| Конструктор и Описание |
|---|
ObservableListBase() |
| Модификатор и Тип | Метод и Описание |
|---|---|
boolean |
addAll(E... elements)
Удобный метод для добавления аргумента var элементов.
|
void |
addListener(InvalidationListener listener)
Добавляет
InvalidationListener который будет уведомлен всякий раз, когда Observable становится недопустимым. |
void |
addListener(ListChangeListener<? super E> listener)
Добавьте слушателя этого заметного списка.
|
protected void |
beginChange()
Начинает блок изменения.
|
protected void |
endChange()
Заканчивает блок изменения.
|
protected void |
fireChange(ListChangeListener.Change<? extends E> change)
Уведомляет всех слушателей изменения
|
protected boolean |
hasListeners()
Возвращает true, если есть некоторые слушатели, зарегистрированные для этого списка.
|
protected void |
nextAdd(int from, int to)
Добавляет, что новое добавляет работу к изменению.
|
protected void |
nextPermutation(int from, int to, int[] perm)
Добавляет новая работа перестановки к изменению.
|
protected void |
nextRemove(int idx, E removed)
Добавляет, что новое удаляет работу к изменению с единственным удаленным элементом.
|
protected void |
nextRemove(int idx, java.util.List<? extends E> removed)
Добавляет, что новое удаляет работу к изменению с многократными удаленными элементами.
|
protected void |
nextReplace(int from, int to, java.util.ArrayList<? extends E> removed)
Добавляет новая работа замены к изменению.
|
protected void |
nextSet(int idx, E old)
Добавляет новая операция присвоения к изменению.
|
protected void |
nextUpdate(int pos)
Добавляет новая работа обновления к изменению.
|
void |
remove(int from, int to)
В основном у ярлыка на подсписок (от, до).clear (), Поскольку это - общая работа, ObservableList, есть этот метод для удобного использования.
|
boolean |
removeAll(E... elements)
Удобный метод для использования аргумента var removaAll метода.
|
void |
removeListener(InvalidationListener listener)
Удаляет данного слушателя из списка слушателей, которые уведомляются всякий раз, когда значение
Observable становится недопустимым. |
void |
removeListener(ListChangeListener<? super E> listener)
Попытки к удаленному слушатель от этого заметного списка.
|
boolean |
retainAll(E... elements)
Удобный метод для использования аргумента var сохраняет метод.
|
boolean |
setAll(java.util.Collection<? extends E> col)
Очищает ObservableList, и добавьте все элементы от набора.
|
boolean |
setAll(E... elements)
Очищает ObservableList, и добавьте все элементы, которые передают как var-args.
|
add, add, addAll, clear, equals, get, hashCode, indexOf, iterator, lastIndexOf, listIterator, listIterator, remove, removeRange, set, subListaddAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, size, toArray, toArray, toStringclone, finalize, getClass, notify, notifyAll, wait, wait, waitfiltered, sorted, sortedadd, add, addAll, addAll, clear, contains, containsAll, equals, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, replaceAll, retainAll, set, size, sort, spliterator, subList, toArray, toArraypublic ObservableListBase()
protected final void nextUpdate(int pos)
Отметьте: потребности, которые вызовут внутри beginChange() / endChange() блок.
Отметьте: потребности отразить текущее состояние списка.
pos - позиция в списке, где обновленный элемент находится.protected final void nextSet(int idx, E old)
nextRemove(idx); nextAdd(idx, idx + 1); . Отметьте: потребности, которые вызовут внутри beginChange() / endChange() блок.
Отметьте: потребности отразить текущее состояние списка.
idx - индексирование элемента, который был установленold - старое значение в idx позиция.protected final void nextReplace(int from, int to, java.util.ArrayList<? extends E> removed)
nextRemove(from, removed); nextAdd(from, to);
Отметьте: потребности, которые вызовут внутри beginChange() / endChange() блок.
Отметьте: потребности отразить текущее состояние списка.
from - индексирование, где элементы были замененыto - конец индексирует (монопольный) из диапазона, где новые элементы находятсяremoved - список элементов, которые были удаленыprotected final void nextRemove(int idx, java.util.List<? extends E> removed)
Отметьте: потребности, которые вызовут внутри beginChange() / endChange() блок.
Отметьте: потребности отразить текущее состояние списка.
idx - индексирование, куда элементы были удаленыremoved - список элементов, которые были удаленыprotected final void nextRemove(int idx, E removed)
Отметьте: потребности, которые вызовут внутри beginChange() / endChange() блок.
Отметьте: потребности отразить текущее состояние списка.
idx - индексирование, куда элемент был удаленremoved - элемент, который был удаленprotected final void nextPermutation(int from, int to, int[] perm)
"i" содержит индексирование, где элемент от индексирования "i" был перемещен. Не необходимо обеспечить самую маленькую возможную перестановку. Это корректно, чтобы всегда вызвать этот метод с nextPermutation(0, size(), permutation);
Отметьте: потребности, которые вызовут внутри beginChange() / endChange() блок.
Отметьте: потребности отразить текущее состояние списка.
from - отмечает начало (включительно) диапазона, который был permutatedto - отмечает конец (монопольный) из диапазона, который был permutatedperm - перестановка в том диапазоне. Даже если from != 0, массив должен содержать индексирование списка. Поэтому, такая перестановка не содержала бы, индексирует диапазона (0, from)protected final void nextAdd(int from, int to)
Отметьте: потребности, которые вызовут внутри beginChange() / endChange() блок.
Отметьте: потребности отразить текущее состояние списка.
from - отмечает начало (включительно) диапазона, который был добавленto - отмечает конец (монопольный) из диапазона, который был добавленprotected final void beginChange()
next* методы вызывают. Для каждого beginChange(), должно быть соответствие endChange() вызвать. beginChange() вызовы могут быть вложены в a beginChange()/endChange() блок.
endChange()protected final void endChange()
ObservableList, Change создается и все слушатели уведомляются. Окончание вложенного блока не запускает уведомление.
beginChange()public final void addListener(InvalidationListener listener)
ObservableInvalidationListener который будет уведомлен всякий раз, когда Observable становится недопустимым. Если тот же самый слушатель будет добавлен не раз, то это будет уведомлено не раз. Таким образом, никакая проверка не осуществляется, чтобы гарантировать уникальность. Отметьте что фактическое то же самое InvalidationListener экземпляр может быть безопасно зарегистрирован для различного Observables.
Observable хранит ссылку strong на слушателя, который будет препятствовать тому, чтобы слушатель был собран "мусор", и может привести к утечке памяти. Это рекомендуется любому нерегистру слушателя, вызывая removeListener после использования или использовать экземпляр WeakInvalidationListener избегите этой ситуации.
addListener в интерфейсе Observablelistener - Слушатель регистраObservable.removeListener(InvalidationListener)public final void removeListener(InvalidationListener listener)
ObservableObservable становится недопустимым. Если данный слушатель не был ранее зарегистрирован (то есть это никогда не добавлялось), тогда, этот вызов метода нет. Если это было ранее добавлено тогда, что это будет удалено. Если это было добавлено не раз, то только первое возникновение будет удалено.
removeListener в интерфейсе Observablelistener - Слушатель, чтобы удалитьObservable.addListener(InvalidationListener)public final void addListener(ListChangeListener<? super E> listener)
ObservableListaddListener в интерфейсе ObservableList<E>listener - слушатель для того, чтобы слушать изменения спискаpublic final void removeListener(ListChangeListener<? super E> listener)
ObservableListremoveListener в интерфейсе ObservableList<E>listener - слушатель, чтобы удалитьprotected final void fireChange(ListChangeListener.Change<? extends E> change)
change - protected final boolean hasListeners()
public boolean addAll(E... elements)
ObservableListaddAll в интерфейсе ObservableList<E>elements - элементы, чтобы добавитьpublic boolean setAll(E... elements)
ObservableListsetAll в интерфейсе ObservableList<E>elements - элементы, чтобы установитьpublic boolean setAll(java.util.Collection<? extends E> col)
ObservableListsetAll в интерфейсе ObservableList<E>col - набор с элементами, которые будут добавлены к этому observableArrayListpublic boolean removeAll(E... elements)
ObservableListremoveAll в интерфейсе ObservableList<E>elements - элементы, которые будут удаленыpublic boolean retainAll(E... elements)
ObservableListretainAll в интерфейсе ObservableList<E>elements - элементы, которые будут сохраненыpublic void remove(int from, int to)
ObservableListremove в интерфейсе ObservableList<E>from - запуск диапазона, чтобы удалить (включительно)to - конец диапазона, чтобы удалить (монопольный)Copyright (c) 2008, 2013, Oracle и/или его филиалы. Все права защищены. Использование подвергается .