Android小项目之八 界面细节
按惯例,写在前面的:可能在学习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前面,否则会出错。
Android小项目之八 界面细节的更多相关文章
- Android小项目之十二 设置中心的界面
------- 源自梦想.永远是你IT事业的好友.只是勇敢地说出我学到! ---------- 按惯例,写在前面的:可能在学习Android的过程中,大家会和我一样,学习过大量的基础知识,很多的知识点 ...
- Android小项目之十一 应用程序的主界面
------- 源自梦想.永远是你IT事业的好友.只是勇敢地说出我学到! ---------- 按惯例,写在前面的:可能在学习Android的过程中,大家会和我一样,学习过大量的基础知识,很多的知识点 ...
- Android小项目之三 splash界面
------- 源自梦想.永远是你IT事业的好友.只是勇敢地说出我学到! ---------- 按惯例,写在前面的:可能在学习Android的过程中,大家会和我一样,学习过大量的基础知识,很多的知识点 ...
- Android小项目之十 应用程序更新的签名问题
------- 源自梦想.永远是你IT事业的好友.只是勇敢地说出我学到! ---------- 按惯例,写在前面的:可能在学习Android的过程中,大家会和我一样,学习过大量的基础知识,很多的知识点 ...
- Android小项目之五 splash动画效果
------- 源自梦想.永远是你IT事业的好友.只是勇敢地说出我学到! ---------- 按惯例,写在前面的:可能在学习Android的过程中,大家会和我一样,学习过大量的基础知识,很多的知识点 ...
- Android小项目练习之一 项目简介
------- 源自梦想.永远是你IT事业的好友.只是勇敢地说出我学到! ---------- 按惯例,写在前面的:可能在学习Android的过程中,大家会和我一样,学习过大量的基础知识,很多的知识点 ...
- Android小项目之四 自动更新检查的逻辑
------- 源自梦想.永远是你IT事业的好友.只是勇敢地说出我学到! ---------- 按惯例,写在前面的:可能在学习Android的过程中,大家会和我一样,学习过大量的基础知识,很多的知识点 ...
- Android小项目之二 代码的组织结构
------- 源自梦想.永远是你IT事业的好友.只是勇敢地说出我学到! ---------- 按惯例,写在前面的:可能在学习Android的过程中,大家会和我一样,学习过大量的基础知识,很多的知识点 ...
- 【Android小项目】找不同,改编自"寻找房祖名"的一款开源小应用。
近期在微信朋友圈"寻找房祖名"和"万里寻刀"这类小游戏比較火.我试着写了一个android版本号的,里面全是一系列的形近字,实现原理非常easy:用一个Grid ...
随机推荐
- LabView中,下拉列表和枚举有什么区别?
枚举变量只能针对无符号整型数据U32,U16,U8; 而下拉列表则可以包括扩展精度,双精度,单精度,64位.长.双字节.单字节整型以及各种无符号整型(如下图黑色部分). 下拉列表
- poj 1719 Shooting Contest
http://poj.org/problem?id=1719 Shooting Contest Time Limit: 1000MS Memory Limit: 10000K Total Subm ...
- ARP防火墙绑定网关MAC地址预防ARP攻击和P2P终结者
[故障原理] 要了解故障原理,我们先来了解一下ARP协议. 在局域网中,通过ARP协议来完成IP地址转换为第二层物理地址(即MAC地址)的.ARP协议对网络安全具有重要的意义.通过伪造IP地址和M ...
- Android 当媒体变更后,通知其他应用重新扫描
在媒体文件改变后 发出 Intent.ACTION_MEDIA_SCANNER_SCAN_FILE广播,告知其他应用,媒体文件发生改变. 具体代码片段: File oldFile = new File ...
- 字符编解码的故事(ASCII,ANSI,Unicode,Utf-8)
很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物.他们认为8个开关状态作为原子单位很好,于是他们把这称为"字节". 再后来,他们又做了一 ...
- 1016. 部分A+B (15)
正整数A的“DA(为1位整数)部分”定义为由A中所有DA组成的新整数PA.例如:给定A = 3862767,DA = 6,则A的“6部分”PA是66,因为A中有2个6. 现给定A.DA.B.DB,请编 ...
- ActiveMQ讯息传送机制以及ACK机制详解
[http://www.ylzx8.cn/ruanjiangongcheng/software-architecture-design/11922.html] AcitveMQ:消息存储和分发组件,涉 ...
- PHP 根据类名和方法名已面向对象的方式执行函数。
<?php echo 'testClass'; echo '<br><hr>'; $className = 'TestClass'; $methodName = 'c_o ...
- Eclipse背景颜色修改
改变背景颜色(黑底背景的设置) windows->Preferences->General->Editor->Text Editors windows->Preferen ...
- TL-WR703 USB不稳定/当前的总结
http://see.sl088.com/wiki/WR703_USB%E4%B8%8D%E7%A8%B3%E5%AE%9A/%E5%BD%93%E5%89%8D%E7%9A%84%E6%80%BB% ...