use of android.graphics.drawable.AnimatedVectorDrawable in project platform_frameworks_base by android.
the class AnimatedVectorDrawableTest method onCreate.
@Override
protected void onCreate(Bundle savedInstanceState) {
final int[] layerTypes = { View.LAYER_TYPE_SOFTWARE, View.LAYER_TYPE_HARDWARE };
final boolean[] forceOnUi = { false, true };
super.onCreate(savedInstanceState);
ScrollView scrollView = new ScrollView(this);
GridLayout container = new GridLayout(this);
scrollView.addView(container);
container.setColumnCount(layerTypes.length * forceOnUi.length);
for (int j = 0; j < layerTypes.length; j++) {
for (int k = 0; k < forceOnUi.length; k++) {
TextView textView = new TextView(this);
String category = "Layer:" + (layerTypes[j] == View.LAYER_TYPE_SOFTWARE ? "SW" : "HW") + (forceOnUi[k] == true ? ",forceUI" : "");
textView.setText(category);
container.addView(textView);
}
}
for (int i = 0; i < icon.length; i++) {
for (int j = 0; j < layerTypes.length; j++) {
for (int k = 0; k < forceOnUi.length; k++) {
Button button = new Button(this);
button.setWidth(300);
button.setHeight(300);
button.setLayerType(layerTypes[j], null);
button.setBackgroundResource(icon[i]);
AnimatedVectorDrawable d = (AnimatedVectorDrawable) button.getBackground();
if (forceOnUi[k] == true) {
d.forceAnimationOnUI();
}
d.registerAnimationCallback(new Animatable2.AnimationCallback() {
@Override
public void onAnimationStart(Drawable drawable) {
Log.v(LOGCAT, "Animator start");
}
@Override
public void onAnimationEnd(Drawable drawable) {
Log.v(LOGCAT, "Animator end");
}
});
container.addView(button);
button.setOnClickListener(this);
}
}
}
setContentView(scrollView);
}
use of android.graphics.drawable.AnimatedVectorDrawable in project android_frameworks_base by DirtyUnicorns.
the class AnimatedVectorDrawableAttr method onCreate.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_animated_vector_drawable_attr);
ImageView avdIv = (ImageView) findViewById(R.id.avd);
AnimatedVectorDrawable avd = (AnimatedVectorDrawable) avdIv.getDrawable();
avd.start();
}
use of android.graphics.drawable.AnimatedVectorDrawable in project android_frameworks_base by DirtyUnicorns.
the class AnimatedVectorDrawableDupPerf method onCreate.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ScrollView scrollView = new ScrollView(this);
GridLayout container = new GridLayout(this);
scrollView.addView(container);
container.setColumnCount(5);
Resources res = this.getResources();
container.setBackgroundColor(0xFF888888);
AnimatedVectorDrawable[] d = new AnimatedVectorDrawable[icon.length];
long time = android.os.SystemClock.elapsedRealtimeNanos();
for (int i = 0; i < icon.length; i++) {
d[i] = create(res, icon[i]);
}
time = android.os.SystemClock.elapsedRealtimeNanos() - time;
TextView t = new TextView(this);
DecimalFormat df = new DecimalFormat("#.##");
t.setText("avgL=" + df.format(time / (icon.length * 1000000.)) + " ms");
container.addView(t);
time = android.os.SystemClock.elapsedRealtimeNanos();
for (int i = 0; i < icon.length; i++) {
Button button = new Button(this);
button.setWidth(200);
button.setBackgroundResource(icon[i]);
container.addView(button);
}
setContentView(scrollView);
time = android.os.SystemClock.elapsedRealtimeNanos() - time;
t = new TextView(this);
t.setText("avgS=" + df.format(time / (icon.length * 1000000.)) + " ms");
container.addView(t);
}
use of android.graphics.drawable.AnimatedVectorDrawable in project android_frameworks_base by DirtyUnicorns.
the class AnimatedVectorDrawableTest method onClick.
@Override
public void onClick(View v) {
AnimatedVectorDrawable d = (AnimatedVectorDrawable) v.getBackground();
d.start();
}
use of android.graphics.drawable.AnimatedVectorDrawable in project android_frameworks_base by DirtyUnicorns.
the class PageIndicator method playAnimation.
private void playAnimation(ImageView imageView, int res) {
final AnimatedVectorDrawable avd = (AnimatedVectorDrawable) getContext().getDrawable(res);
imageView.setImageDrawable(avd);
avd.forceAnimationOnUI();
avd.start();
// TODO: Figure out how to user an AVD animation callback instead, which doesn't
// seem to be working right now...
postDelayed(mAnimationDone, ANIMATION_DURATION);
}
Aggregations