private static void unsetViewStateListAnimator(View view, ViewNodeInfo viewNodeInfo) { if (viewNodeInfo.getStateListAnimator() == null && viewNodeInfo.getStateListAnimatorRes() == 0) { return; } if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) { throw new IllegalStateException( "MountState has a ViewNodeInfo with stateListAnimator, " + "however the current Android version doesn't support stateListAnimator on Views"); } view.setStateListAnimator(null); }
private static void setViewStateListAnimator(View view, ViewNodeInfo viewNodeInfo) { StateListAnimator stateListAnimator = viewNodeInfo.getStateListAnimator(); final int stateListAnimatorRes = viewNodeInfo.getStateListAnimatorRes(); if (stateListAnimator == null && stateListAnimatorRes == 0) { return; } if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) { throw new IllegalStateException( "MountState has a ViewNodeInfo with stateListAnimator, " + "however the current Android version doesn't support stateListAnimator on Views"); } if (stateListAnimator == null) { stateListAnimator = AnimatorInflater.loadStateListAnimator(view.getContext(), stateListAnimatorRes); } view.setStateListAnimator(stateListAnimator); }
private void setStateListAnimator() { StateListAnimator stateListAnimator = AnimatorInflater.loadStateListAnimator(this, R.animator.anim_view_state_change_2); findViewById(R.id.view_puppet2).setStateListAnimator(stateListAnimator); }
@Override public void setStateListAnimator(View view, StateListAnimator stateListAnimator) { view.setStateListAnimator(stateListAnimator); }
LinearLayout layout1 = findViewById(R.id.layout1); View root = layout1.getChildAt(0); StateListAnimator sla = AnimatorInflater.loadStateListAnimator(context, R.anim.lift_up); root.setStateListAnimator(sla); root.setBackground(R.drawable.ripple_effect);
@Override public void setStateListAnimator(View view, int id) { view.setStateListAnimator(AnimatorInflater.loadStateListAnimator(view.getContext(), id)); } }
static void setStateListAnimatorFromAttrs(View view, AttributeSet attrs, int defStyleAttr, int defStyleRes) { final Context context = view.getContext(); final TypedArray a = context.obtainStyledAttributes(attrs, STATE_LIST_ANIM_ATTRS, defStyleAttr, defStyleRes); try { if (a.hasValue(0)) { StateListAnimator sla = AnimatorInflater.loadStateListAnimator(context, a.getResourceId(0, 0)); view.setStateListAnimator(sla); } } finally { a.recycle(); } }
private void setStateListAnimator() { StateListAnimator stateListAnimator = AnimatorInflater.loadStateListAnimator(this, R.animator.anim_view_state_change_2); findViewById(R.id.view_puppet2).setStateListAnimator(stateListAnimator); }
/** * Creates and sets a {@link StateListAnimator} with a custom elevation value */ @SuppressLint("PrivateResource") static void setDefaultAppBarLayoutStateListAnimator(final View view, final float targetElevation) { final StateListAnimator sla = new StateListAnimator(); // Enabled, collapsible and collapsed == elevated sla.addState(new int[]{android.R.attr.enabled, R.attr.state_collapsible, R.attr.state_collapsed}, ObjectAnimator.ofFloat(view, "elevation", targetElevation)); // Enabled and collapsible, but not collapsed != elevated sla.addState(new int[]{android.R.attr.enabled, R.attr.state_collapsible, -R.attr.state_collapsed}, ObjectAnimator.ofFloat(view, "elevation", 0f)); // Enabled but not collapsible == elevated sla.addState(new int[]{android.R.attr.enabled, -R.attr.state_collapsible}, ObjectAnimator.ofFloat(view, "elevation", targetElevation)); // Default, none elevated state sla.addState(new int[0], ObjectAnimator.ofFloat(view, "elevation", 0)); view.setStateListAnimator(sla); }
setDefaultAppBarLayoutStateListAnimator(appBarLayout, 0); @SuppressLint("PrivateResource") private static void setDefaultAppBarLayoutStateListAnimator(final View view, final float targetElevation) { final StateListAnimator sla = new StateListAnimator(); // Enabled, collapsible and collapsed == elevated sla.addState(new int[]{android.R.attr.enabled, android.support.design.R.attr.state_collapsible, android.support.design.R.attr.state_collapsed}, ObjectAnimator.ofFloat(view, "elevation", targetElevation)); // Enabled and collapsible, but not collapsed != elevated sla.addState(new int[]{android.R.attr.enabled, android.support.design.R.attr.state_collapsible, -android.support.design.R.attr.state_collapsed}, ObjectAnimator.ofFloat(view, "elevation", 0f)); // Enabled but not collapsible == elevated sla.addState(new int[]{android.R.attr.enabled, -android.support.design.R.attr.state_collapsible}, ObjectAnimator.ofFloat(view, "elevation", targetElevation)); // Default, none elevated state sla.addState(new int[0], ObjectAnimator.ofFloat(view, "elevation", 0)); view.setStateListAnimator(sla); }