zoukankan      html  css  js  c++  java
  • android实现开机欢迎界面

    不少应用都具有开机欢迎图片,其实现如下:

    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;
        }
        
    
    }
  • 相关阅读:
    接口与抽象类
    观察者模式
    kibana安装
    使用CGLib完成代理模式遇到的错误
    代理模式
    HashMap resize方法的理解(一)
    装饰模式
    volatile关键字解析(二)
    https网站引用http路径的js和css失效解决办法
    IIS7.5配置自动添加www 及 限制通过IP访问web
  • 原文地址:https://www.cnblogs.com/bobodeboke/p/2969317.html
Copyright © 2011-2022 走看看