• 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;
        }
        
    
    }
  • 相关阅读:
    正则表达式-汉字的匹配方法
    python 正则匹配中文(unicode)(转)
    Notepad++ 快捷键 大全
    gvim 编辑器配置
    gvim代码补全
    UNICODE,GBK,UTF-8区别
    AJAX
    day 75 中间件
    Cookie和Session 装饰器的修复技术
    必知必会13条 单表查询之双下划线 ForeignKey操作 ManyToManyField 聚合分组
  • 原文地址:https://www.cnblogs.com/bobodeboke/p/2969317.html
Copyright © 2020-2023  润新知