戻るボタンつきの画面遷移の実装方法

今までかなり我流で適当に作ってた感があったので、改めて確認した。

画面遷移は4つの方法があり、そのうち2つは戻るボタンが付く

こちらの記事によると、ページの遷移には4つの方法があり、このうち currentTab.open と navGroup.open でやると、戻るボタンがつくとのこと。自分はこれまで、currentTab.open を使っていた(tab は隠して)。

では navGroup での実装とはどんな感じなのか?

 

あまり違いがないような?

別のこちらの記事には、navGroup を使った画面遷移のサンプルがあった。やっていることは、

  • win1 作って、そこへTableView をadd
  • ルートウィンドウとしてもうひとつwindowつくる
  • ナビゲーショングループを定義して、最初のwindowとして win1 を指定し、ルートウィンドウをopen
  • イベントリスナーでTableViewの行クリックを検出して、対応するURLを開くwebviewを定義し、ナビゲーショングルーウでその webview のウィンドウをopen

tabの場合とあまり変わらないな、という印象。使い分けが今ひとつ分かっていない。

 

戻るボタンで戻ってきたら、さっきの画面表示にならない

以前自分がtab使って複数のjsファイルで画面遷移をやってみてハマったのが以下の点。

  • メインの画面はtableview で、画面の下には広告スペースが、別のviewで実装されている。
  • tableviewの任意の行をクリックすると、更に別の画面(あるいは別のtableview)に遷移して、表示される情報が細分化されていく。
  • 広告スペースがクリックされると、広告のウェブサイト(webview)が表示される
  • 遷移した画面からは、いずれも戻るボタンで元に戻ってこれる。

で、戻るボタンで戻ってきたときに、本来は tableview + 広告スペース で表示されるはずの画面に、広告スペースが表示されない(tableview だけになってしまう)というものだった。一応解決出来る方法は見出したのだけど、いまひとつしっくり来なかったので、再調査している次第。もうちょっと調べてみようと思う。

 

 

タイトルとURLをコピーしました