(安卓APP)简单的首页广告倒计时实现代码

时间:2022-10-09 15:03:13

直接上代码。

activity_ad.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_ad"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.administrator.navigation_toobar.adActivity">

<ImageView
android:id="@+id/adimageview"
android:scaleType="fitXY"
android:src="@drawable/title"//这里的图片*发挥
android:layout_width="match_parent"
android:layout_height="match_parent" />
<TextView
android:id="@+id/adtextview"
android:layout_alignParentEnd="true"
android:textColor="#fff000"
android:text="广告倒计时:5"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />

</RelativeLayout>


adActivity.java

public class adActivity extends AppCompatActivity implements Animation.AnimationListener,Runnable {
Handler handler=new Handler(){//处理者
@Override
public void handleMessage(Message msg) {
TextView textView= (TextView) findViewById(R.id.adtextview);//初始化控件
switch (msg.what){//按时间自动逐秒递减
case 1:
textView.setText("广告倒计时:4");
break;
case 2:
textView.setText("广告倒计时:3");
break;
case 3:
textView.setText("广告倒计时:2");
break;
case 4:
textView.setText("广告倒计时:1");
break;
case 5:
textView.setText("广告倒计时:0");
break;
 }
super.handleMessage(msg);//发送消息指令
}
};


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ad);
setAnimation();
Thread thread=new Thread(this);
thread.start();

}

private void setAnimation() {//渐变动画
ImageView imageView= (ImageView) findViewById(R.id.adimageview);
AlphaAnimation a=new AlphaAnimation(0.8f,1);
a.setDuration(5000);//时间
a.setAnimationListener(this);//配置监听器
imageView.startAnimation(a);//启动动画

}

@Override
public void onAnimationStart(Animation animation) {

}

@Override
public void onAnimationEnd(Animation animation) {
//当动画结束的时候跳转
 startActivity(new Intent(adActivity.this,loginActivity.class));
finish();
}

@Override
public void onAnimationRepeat(Animation animation) {

}

@Override
public void run() {//线程处理倒计时问题
for (int i=1;i<=5;i++){
Message message=new Message();
try {
Thread.sleep(950);//线程休眠时间
} catch (InterruptedException e) {
e.printStackTrace();
}
message.what=i;
handler.sendMessage(message);//发送消息给处理者
}
}
}

这个可以实现首页广告倒计时的功能,有点不完善,但是努力做出来还是很不错的。

各位朋友有更好的建议可以留言指导。