闪屏制作
方法一:Handler方式
方法二:AlphaAnimation动画new Handler().postDelayed(new Runnable(){ @Override public void run() { Intent intent = new Intent(SplashActivity.this,SplashScreenActivity.class); startActivity(intent); SplashActivity.this.finish(); } }, 2500);
public class WelcomeActivity extends Activity {
private AlphaAnimation start_anima;
View view;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
view = View.inflate(this, R.layout.activity_welcome, null);
setContentView(view);
initView();
initData();
}
private void initData() {
}
private void initView() {
start_anima = new AlphaAnimation(0.3f, 1.0f);
start_anima.setDuration(5000);
view.startAnimation(start_anima);
start_anima.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
}
@Override
public void onAnimationRepeat(Animation animation) {
redirectTo();
}
});
}
private void redirectTo() {
startActivity(new Intent(getApplicationContext(), MainActivity.class));
finish();
}
}
特效添加一:右上角插入倒计时
参考链接:http://www.cnblogs.com/hyyweb/archive/2016/02/23/5208865.html
源码:
import java.lang.ref.WeakReference;
import com.example.shanping.MyActivity.MyCountDownTimer;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.os.Handler;
import android.os.Message;
import android.app.Activity;
import android.content.Intent;
import android.util.Log;
import android.view.Menu;
import android.widget.TextView;
public class MainActivity extends Activity {
private MyCountDownTimer mc;
private TextView tv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv = (TextView) findViewById(R.id.textView1);
mc = new MyCountDownTimer(3000, 1000);
mc.start();
handler.postDelayed(new Runnable() {
@Override
public void run() {
Intent intent=new Intent(MainActivity.this,MyActivity.class);
startActivity(intent);
}
}, 3000);
}
private Handler handler=new Handler();
/**
* 继承 CountDownTimer 防范
*
* 重写 父类的方法 onTick() 、 onFinish()
*/
class MyCountDownTimer extends CountDownTimer {
/**
*
* @param millisInFuture
* 表示以毫秒为单位 倒计时的总数
*
* 例如 millisInFuture=1000 表示1秒
*
* @param countDownInterval
* 表示 间隔 多少微秒 调用一次 onTick 方法
*
* 例如: countDownInterval =1000 ; 表示每1000毫秒调用一次onTick()
*
*/
public MyCountDownTimer(long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval);
}
public void onFinish() {
tv.setText("正在跳转");
}
public void onTick(long millisUntilFinished) {
tv.setText("倒计时(" + millisUntilFinished / 1000 + ")");
}
}
}
说明:
闪屏页用到了handler和CountDownTimer类,还需配置一下Activity的主题,这里是:android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 全屏主题。