安卓项目欢迎界面效果制作(界面显示应用版本信息)
程序员文章站
2024-03-23 08:13:40
...
(1)创建一个工程
(2)将欢迎界面所需的图片导入到drawable文件夹中(这里我的背景图为launch_bg)
(3)创建一个欢迎的activity界面(这里我创建的命名为SplashActivity)
(4)欢迎界面布局文件代码(activity_splash.xml):
注意:使用的是相对布局 <TextView>标签用于显示应用版本信息
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/launch_bg">
<TextView
android:id="@+id/tv_version"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:textColor="@android:color/background_dark"
/>
</RelativeLayout>
(5)SplashActivity代码:
public class SplashActivity extends AppCompatActivity {
private TextView tv_version;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);//设置屏幕显示方向为竖屏
init();
}
private void init()
{
tv_version=(TextView)findViewById(R.id.tv_version);
try{
PackageInfo info=getPackageManager().getPackageInfo(getPackageName(),0);//getPackageManager()获取设备安装应用程序包对象
// getPackageInfo:根据包名获取此处flag标签
tv_version.setText("V"+info.versionName);//程序版本信息
tv_version.setTextSize(25);
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
tv_version.setText("V");
}
/*此段代码作用是让程序在欢迎界面停留3秒之后跳转到MainActivity界面*/
Timer timer=new Timer();//Timer类是JDK中提供的一个定时器功能,使用时会在主线程之外开启一个单独的线程执行指定任务,任务可以执行一次或者多次
TimerTask task=new TimerTask() {//TimerTask类是一个实现了Runnable接口的抽象类,同时代表一个可以被Timer执行的任务
@Override
public void run() {//跳转主界面的任务代码写在TimerTask的run()方法中
Intent intent =new Intent(SplashActivity.this,MainActivity.class);
startActivity(intent);
SplashActivity.this.finish();
}
};
timer.schedule(task,3000);//timer.schedule用于开启TimerTask类 传递两个参数,第一个参数为TimerTask的对象,第二个参数为TimerTask和run()之间的时间差为3秒。
}//即执行TimerTask后停留3秒,执行run()
}
(6)效果预览: