Android 디자인 모드 DataSetObserver
2408 단어 안 드 로 이 드 개발
Receives call backs when a data set has been changed, or made invalid. The typically data sets that are observed are
Cursor
s or Adapter
s. DataSetObserver must be implemented by objects which are added to a DataSetObservable.이 전형 적 인 데이터 형식 은 Cursors 와 Adapters 이다.datasetobserver 는 datasetobservable 대상 에 추가 되 어야 합 니 다.2.DataSetObservable
datasetobservable 은 observable 을 계승 했다.datasetobservable 은 많은 Adapter 에서 사 용 됩 니 다.DataSetObservable 은 DataSetObserver 를 사용 하여 Observable 을 실례 화 합 니 다.DataObserver 는 데이터 세트 대상 의 관찰 자 를 표시 합 니 다.관찰자 란 등록, 반 등록, 비 우 는 세 가지 방법 을 제공 하 는 것 이다.
public abstract class Observable {
protected final ArrayList mObservers = new ArrayList();
public void registerObserver(T observer) {
if (observer == null) {
throw new IllegalArgumentException("The observer is null.");
}
synchronized(mObservers) {
if (mObservers.contains(observer)) {
throw new IllegalStateException("Observer " + observer + " is already registered.");
}
mObservers.add(observer);
}
}
public void unregisterObserver(T observer) {
if (observer == null) {
throw new IllegalArgumentException("The observer is null.");
}
synchronized(mObservers) {
int index = mObservers.indexOf(observer);
if (index == -1) {
throw new IllegalStateException("Observer " + observer + " was not registered.");
}
mObservers.remove(index);
}
}
public void unregisterAll() {
synchronized(mObservers) {
mObservers.clear();
}
}
}
3. DataSetObserver 구현 방법:
public abstract class DataSetObserver {
public void onChanged() {
// Do nothing
}
public void onInvalidated() {
// Do nothing
}
}
데이터 세트 가 바 뀌 었 을 때 DataSetObserver 의 onChanged () 방법 을 호출 합 니 다.데이터 세트 가 실 효 될 때 DataSetObserver 의 onINvalidated () 방법 을 호출 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Android 개발 에 사용 되 는 MT 난수 생 성기이전의 AS3 이식 판 을 약간 고 쳐 서 현재 jkanji 에 사용 하고 있 습 니 다.테스트 를 좀 해 봤 는데 버그 가 별로 없 는 것 같 아 요.가장 간단 한 동전 테스트 를 해 봤 는데 같은 씨앗 의 경우 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.