2012-07-27 13 views
0

我想在onCreate()中執行不同的操作,這取決於我來自的活動。在活動中創建不同的操作

我這樣做,使這個:

Activity A: 
    intent to activity B; 
    intent.putBoolean("name",boolean=false); 
    startActivity B. 

Activity B: 
onCreate(){ 
    Boolean.getBoolean("name"); 
    if(boolean){ 
    }else{**make this**} 
on the other hand if click on a Button 
    onClick {starts activity C}. 

Activity C: 
do things... 
-> if click on a Button -> 
onClick { 
    intent.putBoolean(boolean=true); 
    starts ActivityB} 

Activity B onCreate(){ 
    if(boolean){**make this** 
    } else{} 

我的問題:我可以做的更好的辦法是一回事嗎?

感謝

+0

你是什麼意思,我可以做更好的方式嗎? – iTurki 2012-07-27 14:53:34

+0

*我怎麼做的更好的辦法這個」對不起,我的英語 – Dors 2012-07-27 15:39:35

回答

0

您可以使用意向的putExtra屬性來傳遞一個啓動電流活動的活動的名稱。例如,如果活性A被調用C,那麼你會做這樣的呼叫活動:

Intent intent = new Intent(this, C.class); 
    intent.putExtra("activity","A"); 
    startActivity(intent); 

在活動C:在字符串活動

Intent intent = getIntent(); 
    String activity = intent.getStringExtra("activity"); 

現在你會得到一個和你會知道你是從A來如果您對於B做同樣的,那麼你的活動字符串將讀B.

若C只能通過A或B推出,那麼你沒有任何更多的處理,但如果例如,它可以從HOME啓動,那麼您可能需要在C中進行額外的檢查。

+0

我想這樣做內部消除‘如果’,但我認爲這是不可能的。但是,感謝您的回答。 – Dors 2012-07-31 16:18:35

+0

不客氣。我很高興它的幫助。我不沒有看到更好的方式來做到這一點。 – Erol 2012-07-31 16:38:57

相關問題