您的位置:首页 > 移动开发 > Android开发

android实现开机欢迎界面

2013-03-19 15:47 393 查看
不少应用都具有开机欢迎图片,其实现如下:

1,关键是使用handler的postdelay方法

2,配置文件中,将应用的属性设置为 android:theme="@android:style/Theme.NoTitleBar"。当然在java文件中利用代码

requestWindowFeature(Window.FEATURE_NO_TITLE); //设置标题栏样式
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); //全屏

也能实现类似目的

3,如果图片中需要显示应用的版本信息,获取引用版本部分的代码。

首先布局文件为:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="@string/hello_world" />

</RelativeLayout>


对应的代码部分

public class WelcomeActivity extends Activity {
public static String localVersionName;
@Override
protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
//全屏显示
this.setContentView(R.layout.welcome_layout);

localVersionName=getVersionName();
//需要在延迟一段时间之后实现页面的跳转,利用handler的信息传递
//获得应用的版本信息

TextView tv=(TextView)this.findViewById(R.id.welcome_tv_version);
tv.setText(localVersionName+"版");
//实现开机动画的效果,利用Handler的延时发送功能
new Handler().postDelayed(new Runnable(){

@Override
public void run() {
Intent intent=new Intent();
intent.setClass(WelcomeActivity.this, MainActivity.class);
startActivity(intent);
//将当前的界面的生命周期给结束
WelcomeActivity.this.finish();
//知识点,包括intent的信息传递,activity的生命周期
}

}, 2000);

}

public String getVersionName(){
String name;
PackageManager pm=this.getPackageManager();
try {
PackageInfo info=pm.getPackageInfo(this.getPackageName(), 0);
name=info.versionName;
} catch (NameNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}
return name;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: