ナビゲーションビューを使用するとSencha touchで戻るボタンが表示されます。これはかなり上手です。
しかし、ユーザーがデバイスのバックボタンを押した場合はどうなりますか?それは直接アプリケーションを終了しています。私の要求では、アプリケーションを終了してはならず、以前のscreen.Howに戻る必要があります。
sencha touchアプリケーションのデバイス戻るボタンを処理する方法
答えて
あなたはこのようにボタンをハードウェアをバック扱うことができます。
if (Ext.os.is('Android')) {
document.addEventListener("backbutton", Ext.bind(onBackKeyDown, this), false);
function onBackKeyDown(eve) {
eve.preventDefault();
//do something
alert('back button pressed');
}
}
これはどのクラスまたはJSファイルに適用する必要がありますか? –
これを実行しようとしたときに便利な履歴サポートページの指示が見つかりませんでした。ナビゲーションビューを扱うときにはいつでもルートを使用することができませんでした。ナビゲーションビューは、いつでも大きなビュースタックを持つことができます。
バックボタンを機能させたい場合は、popstate
とpushstate
の機能を使用できます(参照のためhttps://developer.mozilla.org/en-US/docs/DOM/Manipulating_the_browser_historyを参照)。アイデアは、あなたがpush
のビューを追加するときの状態で、それを削除するときにpop
がオフであるということです。 Android携帯電話の物理的な戻るボタン、またはデスクトップブラウザの戻るボタンは、実質的にhistory.back()
を呼び出します。タイトルバーの「戻る」ボタンを押しても同じことが起こるようにするだけです。それは、ナビビューをポップアップさせるものです。それは私がメインコントローラに以下を追加し、煎茶タッチで作業に活用する
:
レフリーに私はmain
ビュー(Ext.navigation.View
のインスタンス)に、そのタイトルバーへの参照を持って、あなたができるから、バックボタンなどのイベントにフック..
refs: {
main: 'mainview',
mainTitleBar: 'mainview titlebar',
}...
私はcontrol
configオブジェクトを経由して、以下の機能を添付
control: {
main: {
push: 'onMainPush'
},
mainTitleBar: {
back: 'onBack'
},
...
これらは次のように定義されています。私はその後、状態は今
init: function() {
/* pop a view when the back button is pressed
note: if it's already at the root it's a noop */
var that = this;
window.addEventListener('popstate', function() {
that.getMain().pop();
}, false);
},
...のinit関数を経由してポップされたときに実行する機能を付ける
onMainPush: function(view, item) {
//do what ever logic you need then..
history.pushState();
},
onBack: function() {
history.back(); //will cause the onpopstate event to fire on window..
//prevent back button popping main view directly..
return false;
},
は、タイトルバーの上に戻って押し、history.back()
を実行しますこれにより、popstate
イベントが発生し、メインビューがポップします。
このアプリケーションを実際のアプリケーションで使用するには、github hereでこの手法を使用した(v。basic!)プロパティーファインダーアプリがあります。
- 1. Sencha Touchテーマ:カスタム戻るボタン
- 2. 他のアプリケーションで戻るボタンを処理する方法は?
- 3. 戻るボタンGrails Webflowの処理方法
- 4. Sencha touchのツールバーのボタンをリンクする方法は?
- 5. Sencha Touchアプリケーションのデプロイ
- 6. sencha touchのツールバーのボタンを左右に揃える方法は?
- 7. Sencha Touch 2アプリケーションをレンダリングする最速の方法
- 8. Sencha Touch - optgroupを実装する方法
- 9. Sencha TouchでWebアプリケーションを構築する方法
- 10. 動的コンテンツのブラウザの戻るボタンを処理する方法
- 11. Vue.jsの戻るボタンでv-ifを処理する方法は?
- 12. Sencha Touchアプリケーションでリストアイテムをオーバーレイする
- 13. iPhoneアプリ、動的コンテンツで戻るボタンを処理する方法
- 14. おそらく戻るボタンを処理する方法
- 15. ダイアログで戻るボタンを処理する方法は?
- 16. Sencha Touch MVCアプリケーション(ヘッダー/フッター)
- 17. Sencha TouchアプリケーションでJSONPリクエストを呼び出す方法
- 18. Sencha Touch 2のピッカーの前後のボタン
- 19. ボタンをクリックしてSencha Touchグルーピングリスト
- 20. アンドロイドのカスタムビューで戻るボタンを押す方法を処理するには?
- 21. Sencha Touch 2アプリのデバッグ方法は?
- 22. Sencha Touch Appの起動方法
- 23. Sencha touch 2 - ダイナミックカルーセルの作成方法
- 24. Sencha Touchアプリケーションのパフォーマンス向上のヒント
- 25. javascriptを使用してブラウザの戻るボタンを処理する方法は?
- 26. phonegapとsencha touchアプリケーションのネイティブローディング画面
- 27. Sencha Touch - First Touchのスクロールディレイ
- 28. Sencha Touchのオフラインマップ
- 29. Sencha touchのアコーディオン
- 30. Sencha Touchのトップタブアイコン
これは私も直面しています同じ問題があります。すべてのアプリが単一の(必要ではないが)htmlファイルによって駆動されるので、以前に訪れたページの履歴はなく、アプリはバックキーで閉じられる。あなたが使用している場合、phonegapから道があるかもしれません。 – SachinGutte
コードを表示してください。 – hekomobile
アプリケーションは、ここに貼り付ける単一のファイルではありません。すべてのファイルシステムとたくさんのファイルが含まれています – atluriajith