10.6.1. 程序初始化
优质
小牛编辑
142浏览
2023-12-01
10.6.1.程序初始化
现在用户启动程序就会首先看到Timeline界面。但是用户必须先设置个人选项并启动Service,否则就没有消息显示。这很容易让人摸不着头脑。
一个解决方案是,在启动时检查用户的个人选项是否存在。若不存在,就跳到选项界面,并给用户一个提示,告诉她下一步该怎么做。
...
@Override
protected void onCreate(Bundle savedInstanceState) {
...
// Check whether preferences have been set
if (yamba.getPrefs().getString("username", null) == null) { //
startActivity(new Intent(this, PrefsActivity.class)); //
Toast.makeText(this, R.string.msgSetupPrefs, Toast.LENGTH_LONG).show(); //
}
...
}
...
- 检查用户的个人选项是否设置。在这里先只检查username即可,因为有了username,往往就意味着所有个人选项都已设置。在第一次启动程序时个人选项还不存在,因此username(或者其它任意一项)肯定为null。
- 启动PrefsActivity。留意这里的startActivity()调用给系统发送一个Intent,但并不会在这里退出onCreate()的执行。这一来就允许用户在设置完毕之后,可以回到Timeline界面。
- 显示一条弹出消息(即Toast),提示用户该怎么做。同前面一样,这里假定你在strings.xml中提供了msgSetupPrefs的定义。