类android.graphics.drawable.Drawable.Callback源码实例Demo

下面列出了怎么用android.graphics.drawable.Drawable.Callback的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: sketch   文件: MultiCallback.java
@Override
public void invalidateDrawable(@NonNull final Drawable who) {
	for (int i = 0; i < mCallbacks.size(); i++) {
		final CallbackWeakReference reference = mCallbacks.get(i);
		final Callback callback = reference.get();
		if (callback != null) {
			if (mUseViewInvalidate && callback instanceof View) {
				((View) callback).invalidate();
			} else {
				callback.invalidateDrawable(who);
			}
		} else {
			// Always remove null references to reduce list size
			mCallbacks.remove(reference);
		}
	}
}
 
源代码2 项目: letv   文件: MaterialProgressDrawable.java
public Ring(Callback callback) {
    this.mCallback = callback;
    this.mPaint.setStrokeCap(Cap.SQUARE);
    this.mPaint.setAntiAlias(true);
    this.mPaint.setStyle(Style.STROKE);
    this.mArrowPaint.setStyle(Style.FILL);
    this.mArrowPaint.setAntiAlias(true);
}
 
@Override
public void invalidateDrawable(@NonNull Drawable who) {
  Callback callback = getCallback();
  if (callback != null) {
    callback.invalidateDrawable(this);
  }
}
 
@Override
public void scheduleDrawable(@NonNull Drawable who, @NonNull Runnable what, long when) {
  Callback callback = getCallback();
  if (callback != null) {
    callback.scheduleDrawable(this, what, when);
  }
}
 
@Override
public void unscheduleDrawable(@NonNull Drawable who, @NonNull Runnable what) {
  Callback callback = getCallback();
  if (callback != null) {
    callback.unscheduleDrawable(this, what);
  }
}
 
源代码6 项目: sketch   文件: MultiCallback.java
@Override
public void scheduleDrawable(@NonNull final Drawable who, @NonNull final Runnable what, final long when) {
	for (int i = 0; i < mCallbacks.size(); i++) {
		final CallbackWeakReference reference = mCallbacks.get(i);
		final Callback callback = reference.get();
		if (callback != null) {
			callback.scheduleDrawable(who, what, when);
		} else {
			// Always remove null references to reduce Set size
			mCallbacks.remove(reference);
		}
	}
}
 
源代码7 项目: sketch   文件: MultiCallback.java
@Override
public void unscheduleDrawable(@NonNull final Drawable who, @NonNull final Runnable what) {
	for (int i = 0; i < mCallbacks.size(); i++) {
		final CallbackWeakReference reference = mCallbacks.get(i);
		final Callback callback = reference.get();
		if (callback != null) {
			callback.unscheduleDrawable(who, what);
		} else {
			// Always remove null references to reduce list size
			mCallbacks.remove(reference);
		}
	}
}
 
源代码8 项目: sketch   文件: MultiCallback.java
/**
 * Associates given {@link Callback}. If callback has been already added, nothing happens.
 *
 * @param callback Callback to be associated
 */
public void addView(final Callback callback) {
	for (int i = 0; i < mCallbacks.size(); i++) {
		final CallbackWeakReference reference = mCallbacks.get(i);
		final Callback item = reference.get();
		if (item == null) {
			// Always remove null references to reduce list size
			mCallbacks.remove(reference);
		}
	}
	mCallbacks.addIfAbsent(new CallbackWeakReference(callback));
}
 
源代码9 项目: sketch   文件: MultiCallback.java
/**
 * Disassociates given {@link Callback}. If callback is not associated, nothing happens.
 *
 * @param callback Callback to be disassociated
 */
public void removeView(final Callback callback) {
	for (int i = 0; i < mCallbacks.size(); i++) {
		final CallbackWeakReference reference = mCallbacks.get(i);
		final Callback item = reference.get();
		if (item == null || item == callback) {
			// Always remove null references to reduce list size
			mCallbacks.remove(reference);
		}
	}
}
 
源代码10 项目: mollyim-android   文件: AnimatingImageSpan.java
public AnimatingImageSpan(Drawable drawable, Callback callback) {
  super(drawable, ALIGN_BOTTOM);
  drawable.setCallback(callback);
}
 
源代码11 项目: bcm-android   文件: AnimatingImageSpan.java
public AnimatingImageSpan(Drawable drawable, Callback callback) {
  super(drawable, ALIGN_BOTTOM);
  drawable.setCallback(callback);
}
 
源代码12 项目: deltachat-android   文件: AnimatingImageSpan.java
public AnimatingImageSpan(Drawable drawable, Callback callback) {
  super(drawable, ALIGN_BOTTOM);
  drawable.setCallback(callback);
}
 
源代码13 项目: Silence   文件: AnimatingImageSpan.java
public AnimatingImageSpan(Drawable drawable, Callback callback) {
  super(drawable, ALIGN_BOTTOM);
  drawable.setCallback(callback);
}
 
源代码14 项目: sketch   文件: MultiCallback.java
CallbackWeakReference(final Callback r) {
	super(r);
}
 
源代码15 项目: sketch   文件: MultiCallback.java
@Override
public int hashCode() {
	final Callback callback = get();
	return callback != null ? callback.hashCode() : 0;
}
 
 类方法
 同包方法