我有一个代码,我存储布尔值以指示用户是否登录。我正在访问共享首选项,如下所示:
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
ButterKnife.bind(this);
// Intialize the shared preference
sharedPref = this.getPreferences(Context.MODE_PRIVATE);
// Check here
}
布局膨胀后我正在检查并且所有资源都是绑定的。但我怀疑的是,我应该初始化共享首选项并在setContentView()
行之前检查它,因为如果用户已经登录,我不想让layout
膨胀并将资源绑定到它并直接转移到另一个activity
,我认为可以加快这个过程。
目前我这样做:
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Intialize the shared preference
sharedPref = this.getPreferences(Context.MODE_PRIVATE);
if (sharedPref.getBoolean(LOGIN_PREFERENCE_KEY, false)){
startActivity(new Intent(this, MainActivity.class));
finish();
}
setContentView(R.layout.activity_login);
ButterKnife.bind(this);