我可以使用活動一次(註冊活動),並使用後不同的活動切換主發射器?我可以使用活動一次(註冊活動),並將主發射器切換到不同的活動?
如果可以的話, 如果我在應用程序中創建的活動的一個參數x,我可以用在其他活動這個參數?...如果是的話,我怎麼能做到這一點另一個問題?
謝謝:)
我可以使用活動一次(註冊活動),並使用後不同的活動切換主發射器?我可以使用活動一次(註冊活動),並將主發射器切換到不同的活動?
如果可以的話, 如果我在應用程序中創建的活動的一個參數x,我可以用在其他活動這個參數?...如果是的話,我怎麼能做到這一點另一個問題?
謝謝:)
不能動態地改變發射活動一次它必須是隻有1個是在清單文件中定義的活動。
我會推薦擁有類似着陸或飛濺活動的內容來檢查共享首選項變量,以決定要啓動哪個活動,例如登錄活動或其他活動。
您不應該從另一個活動訪問活動中的變量,您應該將這些變量存儲在數據保存類中。但是,如果你想這樣做,有一個很好的理由,簡單地說它是靜態的。
運行應用程序後無法調整清單。你可以做的是讓你的默認啓動器活動一旦運行一次就寫入SharedPreferences。在該活動內部,檢查是否已設置該首選項,並且如果它剛完成該活動並啓動新活動,則用戶將無法看到任何內容,只要在啓動器活動的onCreate中執行此操作即可。
至於在活動之間傳遞參數,您應該使用意向附加組件。例如,要傳遞字符串使用putExtra(String key, String value),並在新活動中使用getStringExtra("Key")獲取該參數。
對於可從不同活動訪問的全局變量,還可以擴展Application類,然後通過getApplicationContext()訪問它。
1.一次活動推出
你不能改變主發射器。這是一個靜態信息。你可以做的是以下幾點:
// in the beginning of onCreate
// first launch could be loaded from shared preferences
// see 2. for more
if (!firstLaunch) {
// start another activity
finish();
return;
}
2.在另一活動中使用的數據
一種方式是堅持數據並加載它在其他地方。您將在Data Storage article中找到所需的全部信息。
如果你的數據是原始的,你可以嘗試通過意圖傳遞給另一個活動。見Using integer from one class in another Android。
如果它很複雜,你可以嘗試實現一個自己的Application類,並使用助手方法來訪問全局數據。見Android: Accessing resources without an Activity or Context reference。
請小心,請閱讀Avoiding Memory Leaks article。
如果某個配置尚未創建或者類似的情況,您是否有理由不從主要活動調用註冊活動?通過將這些參數添加到調用的Intent的附加內容或使用SharedPreferences,可以爲多個活動使用相同的參數。 –