2012-04-17 36 views
0

如果用户没有自动化,我需要显示autorizationa活动。什么是显示授权活动而不是主要应用程序活动的方式?

我用发射活动(有nohistory标志)与下面的代码:

protected void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 

    if (Autorization.isAutorized()) 
    { 
     Intent newIntent = new Intent(this, MainActivity.class); 
     // add some flags???? 
     startActivity(newIntent); 
    } 
    else startActivity(new Intent(this, AutorizationActivity.class)); 
} 

autorization齐全,AutorizationActivityFLAG_ACTIVITY_CLEAR_TOP开始启动,然后Launcher开始MainActivity,但我有一些trubles与堆栈中。再按MainActivity再次显示AutorizationActivity而不是隐藏任务。

我必须使用哪些标志以防止从MainActivity回到AutorizationActivity

+0

我已经删除没有历史标志并添加完成();启动MainActivity方法后。这是正确的方式? – Nik 2012-04-17 06:13:37

+0

可能或可能不工作..设置标志是可靠的方式.. – ngesh 2012-04-17 06:17:49

+0

它是工作!我还添加了AutorizationActivity下一个代码: \t public void onBackPressed() \t { \t \t moveTaskToBack(true); \t} – Nik 2012-04-17 06:25:55

回答

1

有几种方法可以做到这一点,最简单的方法是使用AndroidManifest.xml文件。只需在授权活动中添加android:noHistory = "true"即可。

也看看以下问题:removing an activity from the history stack

+0

我不能添加此标志autorization活动,即它不是一个活动,用户必须有能力回avtorization进程 – Nik 2012-04-17 06:18:41

+0

@尼克..你可能想尝试http://stackoverflow.com/questions/9937120/切换之间的活动功能于机器人/ 9937281#9937281 – ngesh 2012-04-17 06:22:24

0

尝试在清单类似this..为AuthorizationActivity设置标志..现在你的标志只适用于MainActivity而不是当前活动。在这样的清单,而不是设置...

相关问题