所以我开始我的活动然后
setContentView(R.layout.myxmllayoutfile);
一切都很好,但是我想让我的图像按钮从零开始突然增长(缩放)(即1%)。然而,布局已经显示按钮,因此它会突然消失,然后再增长,而不是从无变化。
我有一些选择,但有真正的解决方案吗?: 1.从屏幕外飞行图像按钮动画? ;要么 2.使它在xml中变小然后再增长,然后在必要时改变可点击区域?要么 3.有更好的解决方案吗?
更新: 正如我所建议的那样:
<ImageButton
android:id="@+id/spinner"
android:scaleType="fitXY"
android:layout_width="120dp"
android:layout_height="120dp"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:background="@drawable/clear"
android:orientation="horizontal"
android:visibility="invisible"
android:src="@drawable/spin"
/>
在我的java中:
scaleView.startAnimation(scanimation);
ImageButton spinnerbutton=(ImageButton)findViewById(R.id.spinner);
spinnerbutton.setVisibility(View.VISIBLE);
但它在收缩到1%然后增长之前仍然可见!建议欢迎。
UPDATE2:
以下编辑的代码没有任何改变:
public void growit() {
final ImageView scaleView = (ImageView) findViewById(R.id.spinner);
Animation scanimation = AnimationUtils.loadAnimation(this, R.anim.throbbing2);
scanimation.setFillAfter(true);
scanimation.setAnimationListener(new Animation.AnimationListener() {
public void onAnimationStart(Animation a) { Log.e("growit", "---- animation start listener called");
scaleView.setVisibility(View.VISIBLE);
}
public void onAnimationRepeat(Animation a) {
}
public void onAnimationEnd(Animation a) {
}
});
scaleView.startAnimation(scanimation);
}
答案 0 :(得分:1)
隐藏图片按钮。 然后在动画集动画监听器和开始动画回调方法中设置按钮可见
更新:
Animation animation = new ScaleAnimation(0.0f, 1.0f, 0.0f, 1.0f);
animation.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
mImageButton.setVisibility(View.VISIBLE);
}
@Override
public void onAnimationRepeat(Animation animation) { }
@Override
public void onAnimationEnd(Animation animation) { }
});
mImageButton.startAnimation(animation);
答案 1 :(得分:0)
没有永久解决方案。刚刚使用了一种解决方法,在xml中将其缩小,然后按照问题中的建议将其增长为可能的“解决方案”/解决方法但不理想。