【发布时间】:2016-05-23 22:55:27
【问题描述】:
这是我的代码:
这是 HomeActivity.java:
public class HomeActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
session = new SessionManagement(getApplicationContext());
session.checkLogin();
这是 SessionManagement.java:
public class SessionManagement {
SharedPreferences pref;
// Editor for Shared preferences
SharedPreferences.Editor editor;
// Context
Context _context;
public void checkLogin(){
// Check login status
if(!this.isLoggedIn()){
// user is not logged in redirect him to Login Activity
Intent i = new Intent(_context, LoginActivity.class);
// Closing all the Activities
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
// Add new Flag to start new Activity
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
// Staring Login Activity
_context.startActivity(i);
}
}
}
我正在尝试调用“finish();”在这里面: public void checkLogin(){ if(!this.isLoggedIn()){ 所以我可以关闭/finish(); HomeActivity.java 类。
我该怎么做?
【问题讨论】:
-
我建议不要这样做。相反,在
checkLogin()中返回一个“布尔值”,然后将所有 startActivity 代码移动到 Activity 类本身。
标签: java android android-activity android-context activity-finish