在我的应用程序中,我希望显示自己的广告,我想在图像中显示我的广告,它应该是动画的。所以如何显示动画图像
答案 0 :(得分:5)
您可以使用AnimationDrawable
对象进行逐帧动画。
答案 1 :(得分:1)
我可以轻松地帮助你。
首先拍摄要在其中展示广告的图片。如果您要将图片显示为 admob (google ads),请拍摄图片 320X50 决议。
然后在res。
中创建文件夹 anim anim 中的创建 anim1.xml
等动画文件<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate android:fromXDelta="-300%" android:toXDelta="0%"
android:fromYDelta="0%" android:toYDelta="0%" android:duration="1000" />
然后创建另一个文件 anim2.xml
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate android:fromXDelta="300%" android:toXDelta="0%"
android:fromYDelta="0%" android:toYDelta="0%" android:duration="1000" />
在图像中使用此文件进行动画制作。像
mAnimation = AnimationUtils.loadAnimation(getApplicationContext(),
R.anim.anim1);
mAnimation1 = AnimationUtils.loadAnimation(getApplicationContext(),
R.anim.anim2);
这里我使用了两个图像,这些图像在某个常规间隔中交替变换。因为我使用定时器。
new Timer()。scheduleAtFixedRate(new UpdateTimeTask(),1,10 * 1000);
它在修复计划中调用TimerTast类。在这里,我每隔10秒称这个班级为(10 * 1000)。 首先创建新类 UpdateTimerTast
class UpdateTimeTask extends TimerTask {
public void run() {
// Toast.makeText(mActivity, "Timer", Toast.LENGTH_LONG).show();
Message toMain = handler.obtainMessage();
toMain.obj = "banner";
handler.sendMessage(toMain);
}
}
此类调用Handler,其中定期更改和动画图像。
in Handler
private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
if (msg.obj.toString().contentEquals("banner")) {
if (mBanner.isShown()) {
mBanner.setVisibility(View.GONE);
mBanner1.setVisibility(View.VISIBLE);
mBanner1.startAnimation(mAnimation1);
} else if (mBanner1.isShown()) {
mBanner.setVisibility(View.VISIBLE);
mBanner.startAnimation(mAnimation);
mBanner1.setVisibility(View.GONE);
}
}
这里mBanner1和mBanner是ImageView。
就是这样。完成。 :)
答案 2 :(得分:0)
最佳起点是关于2D图形的官方指南。向下滚动到底部,它将讨论Tween动画和逐帧。之后,Google围绕动画教程。那里有许多非常好的。
http://developer.android.com/guide/topics/graphics/2d-graphics.html
答案 3 :(得分:0)
您可以通过三种方式执行此操作: