首先我加載啓動活動A的應用程序,然後進入活動B,然後按我的主頁按鈕並加載Widget。點擊該插件的按鈕加載一個活動XXXX這是應用程序中的類,清除以前的部件活動
Intent searchDailog = new Intent(Intent.ACTION_MAIN)
.addCategory(Intent.CATEGORY_LAUNCHER)
.setComponent(new ComponentName("com.af.screenmanager",
"com.af.screenmanager.XXXX"));
searchDailog.putExtra("ID", appWidgetIds);
searchDailog.putExtra("View", remoteViews);
searchDailog.setAction(ACTION_WIDGET_CONFIGURE);
searchDailog.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent configPendingIntent = PendingIntent
.getActivity(context, 0, searchDailog,
PendingIntent.FLAG_UPDATE_CURRENT);
remoteViews.setOnClickPendingIntent(R.id.widget_search_btn,
configPendingIntent);
也能正常工作,即「XXXX」類負荷。
但問題是,從這裏,當我按下後退按鈕「XXXX」活動關閉並顯示活動B(屏幕從我按下主頁按鈕)。我不想查看它,而是必須轉到主屏幕。
我認爲加載的A和B活動存在於Activity堆棧中。那麼我怎麼能從小部件中清除堆棧。
我確實認爲這個解決方案過於複雜。只要學會有效地管理你的活動堆棧!你的情況不需要更多堆疊。 –
我知道這很複雜。該應用程序工作正常。我做了大量的Google搜索,但是這個soln修復了我的查詢。 –