Android小项目之八 界面细节

时间:2023-03-08 17:04:52
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事业的好友、只是勇敢地说出我学到! ----------