private void maybeAddAttachStateListener() { if (attachStateListener == null || isAttachStateListenerAdded) { return; } view.addOnAttachStateChangeListener(attachStateListener); isAttachStateListenerAdded = true; }
private void maybeAddAttachStateListener() { if (attachStateListener == null || isAttachStateListenerAdded) { return; } view.addOnAttachStateChangeListener(attachStateListener); isAttachStateListenerAdded = true; }
public void listenForAttach(final View view) { view.addOnAttachStateChangeListener(this); }
public BaseCover(Context context) { super(context); mCoverView = onCreateCoverView(context); mCoverView.addOnAttachStateChangeListener(this); }
@NonNull public static OneShotPreDrawListener add(boolean preDrawReturnValue, @NonNull View view, @NonNull Runnable runnable) { OneShotPreDrawListener listener = new OneShotPreDrawListener(preDrawReturnValue, view, runnable); view.getViewTreeObserver().addOnPreDrawListener(listener); view.addOnAttachStateChangeListener(listener); return listener; }
/** * Setup all animations to provided drawable and view */ public void setFor(@NonNull View view, @NonNull IconicsAnimatedDrawable drawable) { unset(); if (view == null || drawable == null) return; mView = view; mDrawable = drawable; if (ViewCompat.isAttachedToWindow(view)) { mListener.onViewAttachedToWindow(view); } view.addOnAttachStateChangeListener(mListener); }
@Override public void subscribe(ObservableEmitter<Object> emitter) throws Exception { verifyMainThread(); EmitterListener listener = new EmitterListener(emitter); emitter.setDisposable(listener); view.addOnAttachStateChangeListener(listener); }
private void listenForDeepestChildAttach(final View view, final ChildAttachListener attachListener) { if (!(view instanceof ViewGroup)) { attachListener.onAttached(); return; } ViewGroup viewGroup = (ViewGroup)view; if (viewGroup.getChildCount() == 0) { attachListener.onAttached(); return; } childOnAttachStateChangeListener = new OnAttachStateChangeListener() { boolean attached = false; @Override public void onViewAttachedToWindow(View v) { if (!attached) { attached = true; attachListener.onAttached(); v.removeOnAttachStateChangeListener(this); childOnAttachStateChangeListener = null; } } @Override public void onViewDetachedFromWindow(View v) { } }; findDeepestChild(viewGroup).addOnAttachStateChangeListener(childOnAttachStateChangeListener); }
@Test public void onLoadCleared_withoutClearOnDetach_doesNotRemoveListeners() { final AtomicInteger count = new AtomicInteger(); OnAttachStateChangeListener expected = new OnAttachStateChangeListener() { @Override public void onViewAttachedToWindow(View v) { count.incrementAndGet(); } @Override public void onViewDetachedFromWindow(View v) { // Intentionally Empty. } }; view.addOnAttachStateChangeListener(expected); attachStateTarget.onLoadCleared(/*placeholder=*/ null); activity.visible(); Truth.assertThat(count.get()).isEqualTo(1); }
static void bindViewControllerToView(final View view, final ViewController viewController) { final View.OnAttachStateChangeListener viewAttachListener = new View.OnAttachStateChangeListener() { @Override public void onViewAttachedToWindow(View v) { viewController.attach(view); } @Override public void onViewDetachedFromWindow(View v) { viewController.detach(view); } }; view.addOnAttachStateChangeListener(viewAttachListener); } }
static void bindViewControllerToView(final View view, final ViewController viewController) { final View.OnAttachStateChangeListener viewAttachListener = new View.OnAttachStateChangeListener() { @Override public void onViewAttachedToWindow(View v) { viewController.attach(view); } @Override public void onViewDetachedFromWindow(View v) { viewController.detach(view); } }; view.addOnAttachStateChangeListener(viewAttachListener); } }
public void onViewDetachedFromWindow(View v) { } }; view.addOnAttachStateChangeListener(tmpListener); view.removeOnAttachStateChangeListener(tmpListener); listeners = getAttachStateListeners(view);
@Override public void transition(ViewGroup root, View from, View to, final TransitionListener transitionListener) { root.removeView(from); if (to == null) { transitionListener.onTransitionCompleted(); return; } to.addOnAttachStateChangeListener(new View.OnAttachStateChangeListener() { @Override public void onViewAttachedToWindow(View v) { transitionListener.onTransitionCompleted(); v.removeOnAttachStateChangeListener(this); } @Override public void onViewDetachedFromWindow(View v) { } }); root.addView(to); } }
@Override public void transition(ViewGroup root, View from, View to, final TransitionListener transitionListener) { root.removeView(from); if (to == null) { transitionListener.onTransitionCompleted(); return; } to.addOnAttachStateChangeListener(new View.OnAttachStateChangeListener() { @Override public void onViewAttachedToWindow(View v) { transitionListener.onTransitionCompleted(); v.removeOnAttachStateChangeListener(this); } @Override public void onViewDetachedFromWindow(View v) { } }); root.addView(to); } }
@Override public void onGlobalFocusChanged(View oldFocus, View newFocus) { if (newFocus == null) { return; } if (oldFocus != null) { oldFocus.removeOnAttachStateChangeListener(this); } Looper.myQueue().removeIdleHandler(this); newFocus.addOnAttachStateChangeListener(this); }
servedView.addOnAttachStateChangeListener(this); } else {
public View getView(final int i, View convertView, ViewGroup viewGroup) { //other code convertView.addOnAttachStateChangeListener(this); return convertView; }
public void attachTo(Launcher launcher) { mLauncher = launcher; mAttachedView = launcher.getWorkspace(); mAttachedView.addOnAttachStateChangeListener(this); attachObserver(); }
public void attachTo(Launcher launcher) { mLauncher = launcher; mAttachedView = launcher.getWorkspace(); mAttachedView.addOnAttachStateChangeListener(this); attachObserver(); }
@Override public void onGlobalFocusChanged(View oldFocus, View newFocus) { if (newFocus == null) { return; } if (oldFocus != null) { oldFocus.removeOnAttachStateChangeListener(this); } Looper.myQueue().removeIdleHandler(this); newFocus.addOnAttachStateChangeListener(this); }