3 回答

TA貢獻(xiàn)1995條經(jīng)驗(yàn) 獲得超2個(gè)贊
你可以通過Intent來做到這一點(diǎn)。
Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(startMain);
此Intent將啟動用戶已定義的啟動器應(yīng)用程序。請注意這一點(diǎn),因?yàn)槿绻脩舨黄谕@樣,應(yīng)用程序就會崩潰。
如果您希望從應(yīng)用程序構(gòu)建退出按鈕,請閱讀Android中的退出按鈕上的這篇文章

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超8個(gè)贊
一線解決方案
moveTaskToBack(true); //activity.moveTaskToBack(true);
當(dāng)按下Home按鈕時(shí)它會表現(xiàn)出來

TA貢獻(xiàn)1809條經(jīng)驗(yàn) 獲得超8個(gè)贊
我想要添加的唯一內(nèi)容,即評論有點(diǎn)太長,是您可以在沒有引用當(dāng)前活動的情況下進(jìn)入主屏幕。
Janusz的代碼需要從Activity或Fragment調(diào)用,因?yàn)閟tartActivity(),
要解決此問題,您可以在應(yīng)用程序文件中存儲應(yīng)用程序上下文的靜態(tài)引用:
public class YourApplication extends Application
{
private static Context mAppContext;
public void onCreate()
{
super.onCreate();
...
YourApplication.mAppContext = getApplicationContext();
}
public static Context getContext()
{
return mAppContext;
}
}
現(xiàn)在,您可以將用戶從應(yīng)用程序中的任何類發(fā)送到設(shè)備主屏幕,而不僅僅是活動,片段或其他類,并引用當(dāng)前活動(您可以決定這是好事還是壞事):
Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
YourApplication.getContext().startActivity(startMain);
- 3 回答
- 0 關(guān)注
- 373 瀏覽
添加回答
舉報(bào)