Android写一个简单的欢迎界面
16lz
2021-01-24
在开发自己的app时,经常在进入主界面之前需要写一个简单的SplashActivity欢迎界面,大概持续3、4秒钟之后再跳转到主界面。以下是本人的一个例子,可以参考。当点击打开app时,有一个欢迎界面,持续3秒后跳转到主界面(HelloWorld)详细的注释在代码里。
代码如下:
AndroidManifest.java
<?xml version="1.0" encoding="utf-8"?>
SplashActivity.xml
package com.example.leidong.mobilesafe;import android.content.Intent;import android.content.pm.PackageInfo;import android.content.pm.PackageManager;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.Window;import android.view.WindowManager;import android.view.animation.AlphaAnimation;import android.widget.RelativeLayout;import android.widget.TextView;import java.util.Timer;import java.util.TimerTask;/** * Created by leidong on 2016/10/5. */public class SplashActivity extends AppCompatActivity { private TextView tv_splash_version; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //设置为无标题栏 requestWindowFeature(Window.FEATURE_NO_TITLE); //设置为全屏模式 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.activity_splash); //获取组件 RelativeLayout r1_splash = (RelativeLayout)findViewById(R.id.r1_splash); tv_splash_version = (TextView)findViewById(R.id.tv_splash_version); tv_splash_version.setText("版本号:" + getVersion()); //背景透明度变化3秒内从0.3变到1.0 AlphaAnimation aa = new AlphaAnimation(0.3f, 1.0f); aa.setDuration(3000); r1_splash.startAnimation(aa); //创建Timer对象 Timer timer = new Timer(); //创建TimerTask对象 TimerTask timerTask = new TimerTask() { @Override public void run() { Intent intent = new Intent(SplashActivity.this, TestActivity.class); startActivity(intent); finish(); } }; //使用timer.schedule()方法调用timerTask,定时3秒后执行run timer.schedule(timerTask, 3000); } /** * 获取当前软件版本号 * @return */ private String getVersion(){ //得到系统的包管理器,已经得到了apk的面向对象包装 PackageManager pm = this.getPackageManager(); try{ //参数一:当前应用程序的包名; //参数二:可选的附加信息,这里用不到,可以定义为0 PackageInfo info = pm.getPackageInfo(getPackageName(), 0); return info.versionName; }catch (Exception e){//包名未找到异常,理论上,该异常不可能发生 e.printStackTrace(); return ""; } }}
package com.example.leidong.mobilesafe;import android.app.Activity;import android.os.Bundle;/** * Created by leidong on 2016/10/5. */public class TestActivity extends Activity { public void onCreate(Bundle savedInstateState){ super.onCreate(savedInstateState); setContentView(R.layout.hello); }}
activity_splash.xml
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
运行效果:
1.欢迎界面
2.主界面
更多相关文章
- Android(安卓)Studio和eclipse之间的不同
- Windows环境中集成Android4.x和Exclipse开发环境
- Android中解析JSON(一)
- Android(安卓)Volley 框架的使用(一)
- Android快速实现二维码扫描--Zxing
- 关于如何检测Android的内存泄漏:
- android窗口管理剖析
- Android使用代码进行界面布局和改变图标、标题、名称、主界面
- 转发---Android(安卓)DRM