読者です 読者をやめる 読者になる 読者になる

Zinc #10 ハードバックキーで前のページに戻る

バックキー(戻るキー)を押すと、いくつかページを進んでいても、1つ目のActivityのため、Activityを閉じてしまう・・・。

戻ることが可能(つまりページが進んでいる)場合、バックキーで前のページに戻れるようにする・・・。

キーが押された時, onKeyDownが発生するので、それをオーバーライド・・・。
BACKキーが押されて、バック可能な(つまり進んでる)場合、WebViewからWebBackForwardListを取得する・・・。
インデックスが1以上なら1つは進んでるので、1つ前のURLを取得する・・・。
新たなURLロードのパターンなので、前回のhttp省略コードも追加・・・。
urlBarには1つ前のURLをセット、WebViewのほうはwv.goBackで戻る・・・。
バックキーではない場合は、親クラスのsuper.onKeyDownに任せる・・・。

f:id:BG1:20160705190524p:plain

ブックマークの管理から、

f:id:BG1:20160705190553p:plain

Yahoo! JAPANを選んで、

f:id:BG1:20160705190641p:plain

表示された・・・。

f:id:BG1:20160705190700p:plain

SportsNaviの、

f:id:BG1:20160705190718p:plain

競馬・・・。
ここでバックキーで戻ると、

f:id:BG1:20160705190805p:plain

SportsNaviに戻り、さらに戻ると、

f:id:BG1:20160705190840p:plain

Yahoo! JAPANのトップに戻る・・・。
ここでさらにバックキーを押すと、Activityが閉じる・・・。

https://github.com/bg1bgst333/Zinc/tree/develop/android/empty_activity/android_studio/src/Zinc