您好,登錄后才能下訂單哦!
如何淺析WPhone、Android的Back與Home鍵,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
Back
在導航頁面的制作方面,WPhone比Android在開發(fā)過程中體現地更加人性化,微軟的API中有一個Go Back方法,能夠使你回到之前的界面,即Back堆棧中的最新條目。如果Back堆棧中沒有任何條目,則此方法將引發(fā)異常,所以在調用此方法前,始終都要檢查 Can Go Forward。而Android中Activity本身也有一個棧對象對相應的Activity進行管理。
但Android程序員必須在onKey事件中對相應的事件進行監(jiān)聽,判斷按下的鍵是不是Back鍵來決定是否執(zhí)行回退操作。
Android中運行的程序無需刻意地去退出,當按下手機的Back鍵的時候,系統(tǒng)會默認調用程序棧中最上層Activity的Destroy()方法來銷毀當前Activity。當此Activity又被其它Activity啟動起來的時候,會重新調用OnCreate()方法進行創(chuàng)建,當棧中所有Activity都彈出結束后,應用也就隨之結束了。如果說程序中存在Service之類的,則可以在恰當的位置監(jiān)聽處理下也就可以了。
接下來通過我的諾基亞手機的各種操作截圖來說明兩者之間的區(qū)別。
WPhone并不會像Android那樣:只是將目標Activity從堆棧中銷毀,但是當你按最右邊的菜單鍵鍵(Home鍵右邊,手機下方總共三個鍵)時,還是可以看到這個Activity的。如果你點擊它,又會重新回到Activity的最前面成為當前的活動。
這里需要注意,這個過程中Activity是重新生成的,關鍵體現在其啟動類的在onCreate()方法中的SavedInstanceState的值此時是null(而Home鍵情況不同,在后面會進行講解)。
而從圖中可以發(fā)現,WPhone采取的策略是要么取消回退,要么直接退出應用程序。
其實,這也體現在了手機最下方的按鍵設計上,WPhone三個鍵分別為Back,Home及Search,并沒有菜單鍵。沒錯,是搜索按鍵,當我安裝了Beta(語音輔助軟件)后,點擊Search按鍵就會彈出Beta的服務界面。
Home
至于Home鍵,WPhone和Android倒是沒有多大的區(qū)別,功能上幾乎一致:點擊后直接回到主界面,將當前應用壓入Activity堆棧中,此時的WPhone也不會強制將應用關閉了。
Android點擊菜單鍵出現的效果,WPhone中自然也會有,不然怎么關閉點擊Home鍵后依然存在的Activity呢。在WPhone中,若想要看到到底有哪些應用界面依然存在,方法是長按Back鍵。效果圖如下:
此時,若想將某個應用重新打開,那么只要在其界面區(qū)域單擊即可;若想關閉,就點擊對應界面右上角的圓形叉叉。
代碼
上面提到過,Android在點擊Back和Home鍵之后,讓應用重新回到活動狀態(tài)的過程是不一樣的。
這里給出在onCreate()方法中進行判斷的代碼:
1 @Override 2 protected void onCreate(Bundle savedInstanceState) { 3 super.onCreate(savedInstanceState); 4 setContentView(R.layout.activity_main); 5 if (savedInstanceState == null) { 6 Toast.makeText(this, "savedInstanceState is null", Toast.LENGTH_SHORT).show(); 7 } 8 else { 9 Toast.makeText(this, "savedInstanceState is not null", Toast.LENGTH_SHORT).show();10 }11 }
若之前是點擊Back,那么在界面上會顯示"savedInstanceState is null",否則會顯示"savedInstanceState is not null"。
總結
WPhone是采用上下的豎排方式,不像Android是左右的翻頁樣式。也就是說,添加得越多,這一頁就會越長,在尋找應用圖標時就只能上下滾動。
這里有必要再說一下,在應用圖標的排布方面Android和IOS是相似的,采用頁面左右滑動的設計;而在重新喚醒或徹底關閉Acticity堆棧中的應用時,WPhone和IOS是相似的,將應用界面左右排布,不過兩者的區(qū)別在于:
1、WPhone是長安Back鍵跳出所有應用界面,IOS是連續(xù)、快速地點擊兩次Home鍵;
2、WPhone是點擊關閉按鈕或者向下滑動應用界面,IOS是將應用界面向上滑動;
但是,也有其有意思的方面,注意上圖中的圖標大小。WPhone是允許用戶自定義圖標大小的,而且可以將圖標在頁面上任意拖動以完成自己想要的布局。
關于如何淺析WPhone、Android的Back與Home鍵問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業(yè)資訊頻道了解更多相關知識。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。