我想为第一次运行我的应用程序的用户进行注册活动。我不希望用户能够跳过此注册活动,如果他不想注册,则必须关闭应用程序。
我可以通过存储 in 来检查用户是否注册SharedPreferences
,这似乎工作没有任何问题。到目前为止,我的 MainActivity 中的内容是:
public void onCreate(Bundle savedInstanceState) {
if (needsRegistration()) {
Intent intent = new Intent(this, RegistrationActivity.class);
startActivity(intent);
}
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
...
}
我遇到以下问题:
- 我不确定应该从哪里开始注册活动(之前或之后)
super.onCreate(savedInstanceState)
?)
- MainActivity 似乎继续在后台工作并产生错误(因为用户未注册)
- 用户可以通过按后退按钮转到MainActivity
执行此操作的正确方法是什么?
我不确定应该在哪里开始注册活动(在 super.onCreate(savedInstanceState) 之前还是之后?)
你应该有你的super()
在执行打开功能时作为第一个调用调用,例如onCreate()
, onResume()
等等......这样该函数就可以做所有事情super()
需要调用才能使函数准备就绪。这并不总是一个问题,但首先拨打电话会更安全。整理功能如onBackPressed()
, finish()
等...应该有super()
在进行清理(例如保存数据)后调用。
MainActivity 似乎继续在后台工作并产生错误(因为用户未注册)
使RegistrationActivity
发射器Activity
并检查用户是否已注册,如果是则启动MainActivity
否则显示您的注册码或在这种情况下您执行的任何操作。
用户可以通过按后退按钮转到MainActivity
请参阅之前的解决方案。如果MainActivity
才开始于RegistrationActivity
那么这就不是问题了。
检查SharedPreferences
查看用户是否已注册不会造成太大的延迟,因此您可以在创建之前执行此操作layout
为了那个原因Activity
并前往MainActivity
如果他们已注册。如果由于某种原因您注意到有很大的延迟,那么您可以在检查注册或未注册时制作一个闪屏来显示您的徽标或其他内容,然后通过转到注册或主页面来采取适当的操作Activity
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)