我想知道是否可以抽象startActivity調用?我正在試圖做的是抽象的以下內容:是否可以抽象startActivity調用?
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
public void run() {
startActivity(nextIntent);
}
}, 2000);
如果我之前已經設置的意圖nextIntent用正確的類和正確的羣衆演員。這個想法是,我會延遲2秒開始的意圖。上面的代碼工作正常,如果我直接從我的活動調用它。我想要做的是抽象的,上面的代碼,這樣我可以從任何像這樣的活動稱之爲:延遲2秒後
DelayActivity.StartDelayedActivity(2,nextIntent);
這將啓動下一個活動nextIntent。然而,當我嘗試編寫這一點,我得到以下錯誤:
The method startActivity(Intent) is undefined for the type new Runnable(){}
我已經看了題目是這樣的:Is that possible to call for startActivity() from a static method?,但該線程定義方法的意圖。我希望能夠達成我已經設定並通過的意圖。我正在尋找可能做什麼?如果是這樣,我需要做些什麼改變?非常感謝。
非常感謝您的回覆。我對Android開發並不熟悉,如果它更優化,我肯定願意重做設計。我試圖做的是延遲一段時間的活動開始。所以流程就像這樣。我有一個活動在屏幕上,用戶採取一些行動,並點擊一個按鈕,將它們發送到一個新的屏幕。這個新的屏幕只會持續幾秒鐘,此時應用程序會自動啓動另一個活動。其目的是爲用戶顯示一個臨時屏幕,但不需要他們從臨時屏幕移動任何動作 – NifflerX
我會堅持將對話框顯示爲彈出視圖或「ViewPager」來顯示一組事物繼續http://developer.android.com/training/animation/screen-slide.html。有一堆活動是代碼氣味的標誌.. –
嗨,感謝您的ViewPager的想法。我的兩個擔心就是它讓用戶有很大的自由度來在屏幕之間來回移動,而且它似乎是爲了在每個屏幕上處理相同的對象而構建的(在這個例子中每個屏幕上都有一個文本框)。在我的屏幕上的應用程序有文本框,而另一個有按鈕,第三個有圖像瀏覽。使用ViewPager可以限制用戶可用的導航選項,並且每個屏幕都有不同的對象?再次感謝你的幫助。 – NifflerX