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(); //

}

...

}

...

  1. 检查用户的个人选项是否设置。在这里先只检查username即可,因为有了username,往往就意味着所有个人选项都已设置。在第一次启动程序时个人选项还不存在,因此username(或者其它任意一项)肯定为null。
  2. 启动PrefsActivity。留意这里的startActivity()调用给系统发送一个Intent,但并不会在这里退出onCreate()的执行。这一来就允许用户在设置完毕之后,可以回到Timeline界面。
  3. 显示一条弹出消息(即Toast),提示用户该怎么做。同前面一样,这里假定你在strings.xml中提供了msgSetupPrefs的定义。