• Android项目 手机安全卫士(代码最全,注释最详细)之八 界面细节


    ------- 源自梦想永远是你IT事业的好友、只是勇敢地说出我学到! ----------

    按惯例,写在前面的:可能在学习Android的过程中,大家会和我一样,学习过大量的基础知识,很多的知识点也都能说出了123来,但是这些孤立的点终究显得太零散了,因此,我想从今天开始,以最经典的手机安全卫士项目为例,自己锻炼一下,也是想和大家交流交流,希望大家都能给出见解,共同进步。

    八、界面细节

    处理一些界面上的小细节。
    1.如果在对话框出现后,用户点击后退,就会停留在splash界面。我们需要处理成点击后退,就进入主界面。
    这就需要我们在取消对话框的时候,给一个监听器,正好也有这样的一个api,OnCancleListener。代码放在对话框show()之前。

    		具体代码:
    			/*
    			 * 当取消对话框的时候,直接进入主界面
    			 */
    			builder.setOnCancelListener(new OnCancelListener(){
    
    
    				@Override
    				public void onCancel(DialogInterface dialog) {
    					loadMainUI();
    				}
    			});




    2.用户在下载完成新版本后,会出现一个是否安装新应用的对话框,如果这时候用户又不想安装了,点击取消,又会出现卡在splash界面上的情况。
    这时候我们就需要得到下载成功后开始安装的返回值,可以用startActivityForResult(intent,0)
    (快捷键:Alt+/ 快速获取api)
    将apkInstall(File t)方法中的startActivity(intent)改为startActivityForResult(intent,0),然后写onActivityResult方法。
    具体代码:

    			@Override
    			protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    				loadMainUI();			
    				super.onActivityResult(requestCode, resultCode, data);
    			}




    3.更新提醒的对话框,黑底色显得很难看,我们想把它变得美观些。怎么处理呢?
    之所以会显示这样的样式,是因为我们在当前activity主题样式是旧版本的:android:theme="@android:style/Theme.Black.NoTitleBar"
    这时候我们只需把这一行代码删除掉,就可以使得对话框变得美观。但是这时候,标题栏又出现了,我们可以使用代码,将标题栏去掉。
    然后在onCreate下增加代码:
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    这样就可以了。

    注意:这一句必须放到setContentView前面,否则会出错。

    ------- 源自梦想永远是你IT事业的好友、只是勇敢地说出我学到! ----------


  • 相关阅读:
    linux g++编译dxf文件C++解析库dxflib
    linux g++使用总结
    一个使用three.js的网页DXF文件查看器dxf viewer
    node.js教程基础:node.js访问操作系统
    node.js教程基础:node.js全局对象
    node.js教程基础:node.js命令行选项
    node.js教程基础:node.js包管理器
    node.js教程基础:node.js REPL
    node.js教程基础:第一个node.js程序
    node.js教程基础:node.js安装
  • 原文地址:https://www.cnblogs.com/suncoolcat/p/3328979.html
Copyright © 2020-2023  润新知