80 lines
2.4 KiB
Java
80 lines
2.4 KiB
Java
package com.actionbarsherlock.internal.nineoldandroids.view;
|
|
|
|
import android.content.Context;
|
|
import android.util.AttributeSet;
|
|
import android.view.ViewGroup;
|
|
|
|
import com.actionbarsherlock.internal.nineoldandroids.view.animation.AnimatorProxy;
|
|
|
|
public abstract class NineViewGroup extends ViewGroup {
|
|
private final AnimatorProxy mProxy;
|
|
|
|
public NineViewGroup(Context context) {
|
|
super(context);
|
|
mProxy = AnimatorProxy.NEEDS_PROXY ? AnimatorProxy.wrap(this) : null;
|
|
}
|
|
public NineViewGroup(Context context, AttributeSet attrs) {
|
|
super(context, attrs);
|
|
mProxy = AnimatorProxy.NEEDS_PROXY ? AnimatorProxy.wrap(this) : null;
|
|
}
|
|
public NineViewGroup(Context context, AttributeSet attrs, int defStyle) {
|
|
super(context, attrs, defStyle);
|
|
mProxy = AnimatorProxy.NEEDS_PROXY ? AnimatorProxy.wrap(this) : null;
|
|
}
|
|
|
|
@Override
|
|
public void setVisibility(int visibility) {
|
|
if (mProxy != null) {
|
|
if (visibility == GONE) {
|
|
clearAnimation();
|
|
} else if (visibility == VISIBLE) {
|
|
setAnimation(mProxy);
|
|
}
|
|
}
|
|
super.setVisibility(visibility);
|
|
}
|
|
|
|
public float getAlpha() {
|
|
if (AnimatorProxy.NEEDS_PROXY) {
|
|
return mProxy.getAlpha();
|
|
} else {
|
|
return super.getAlpha();
|
|
}
|
|
}
|
|
public void setAlpha(float alpha) {
|
|
if (AnimatorProxy.NEEDS_PROXY) {
|
|
mProxy.setAlpha(alpha);
|
|
} else {
|
|
super.setAlpha(alpha);
|
|
}
|
|
}
|
|
public float getTranslationX() {
|
|
if (AnimatorProxy.NEEDS_PROXY) {
|
|
return mProxy.getTranslationX();
|
|
} else {
|
|
return super.getTranslationX();
|
|
}
|
|
}
|
|
public void setTranslationX(float translationX) {
|
|
if (AnimatorProxy.NEEDS_PROXY) {
|
|
mProxy.setTranslationX(translationX);
|
|
} else {
|
|
super.setTranslationX(translationX);
|
|
}
|
|
}
|
|
public float getTranslationY() {
|
|
if (AnimatorProxy.NEEDS_PROXY) {
|
|
return mProxy.getTranslationY();
|
|
} else {
|
|
return super.getTranslationY();
|
|
}
|
|
}
|
|
public void setTranslationY(float translationY) {
|
|
if (AnimatorProxy.NEEDS_PROXY) {
|
|
mProxy.setTranslationY(translationY);
|
|
} else {
|
|
super.setTranslationY(translationY);
|
|
}
|
|
}
|
|
}
|