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

Activity.onBackPressed

Android

バックキーでもgoBackで戻れるようにしたいが、そのためにはバックキーが押された時の動作を変えないといけない・・・。

Activity | Android Developers

onBackPressedをオーバーライドして、バックキーの動作を変える・・・。

MainActivity.javaで、

canGoBackがtrueならgoBack、falseなら既定の動作super.onBackPressedに任せる・・・。
(この場合の既定の動作はアクティビティを閉じる・・・。)
こうすることで、2ページ目以上なら戻るし、1ページ目ならアクティビティを閉じる・・・。

ついでに、

メニューもcanGoBackでfalseなら閉じるようにした・・・。

f:id:BG1:20170228132836p:plain

Yahoo!トップ・・・。

f:id:BG1:20170228132905p:plain

スポナビトップ・・・。

f:id:BG1:20170228132930p:plain

野球・・・。
そこからバックキーを押すと、

f:id:BG1:20170228132957p:plain

スポナビトップ・・・。
さらにバックして、

f:id:BG1:20170228133025p:plain

Yahoo!トップ・・・。
ここでバックすると、

f:id:BG1:20170228133124p:plain

onBackPressed既定の動作により、アクティビティを閉じる・・・。

Sample/android/Activity/onBackPressed/src/Activity at master · bg1bgst333/Sample · GitHub