Blackberryでは、ある画面から次の画面に移動できますが、前の画面に戻ることはできません。エミュレータでエスケープキーを押すと、アプリケーション全体が終了します。エミュレータに、前の画面に戻るための他のキーや戻るためのコードがありますか?あなたが私を助けてください知っている場合。Blackberryで前の画面に戻るにはどうすればいいですか?
答えて
アンドレイは言ったように、ディスプレイスタックがあるので、ポップせずに画面をプッシュすると、スタックにとどまるので、現在の画面を閉じ、前の画面が自動的に表示されます。画面が閉じると、アプリケーションは終了します。
しかし、多くの画面をディスプレイスタックに保持するのは良くないので、手動でナビゲーションを処理するために、画面内に種類のスタックを実装することができます。
抽象的な画面スタックの実装のための画面クラス:
public abstract class AScreen extends MainScreen {
Screen prevScreen = null;
void openScreen(AScreen nextScreen) {
nextScreen.prevScreen = this;
UiApplication.getUiApplication().popScreen(this);
UiApplication.getUiApplication().pushScreen(nextScreen);
}
void openPrevScreen() {
UiApplication.getUiApplication().popScreen(this);
if (null != prevScreen)
UiApplication.getUiApplication().pushScreen(prevScreen);
}
}
サンプル最初の画面:
public class FirstScreen extends AScreen implements FieldChangeListener {
ButtonField mButton = null;
public FirstScreen() {
super();
mButton = new ButtonField("Go second screen", ButtonField.CONSUME_CLICK);
mButton.setChangeListener(this);
add(mButton);
}
public void fieldChanged(Field field, int context) {
if (mButton == field) {
openScreen(new SecondScreen());
}
}
}
サンプル2番目の画面:
public class SecondScreen extends AScreen implements FieldChangeListener {
ButtonField mButton = null;
public SecondScreen() {
super();
mButton = new ButtonField("Go first screen", ButtonField.CONSUME_CLICK);
mButton.setChangeListener(this);
add(mButton);
}
public void fieldChanged(Field field, int context) {
if (mButton == field) {
openPrevScreen();
}
}
public boolean onClose() {
openPrevScreen();
return true;
}
}
BlackBerryは画面のスタックを維持します。 ディスプレイスタック。
画面がスタックにポップされ、UiApplicationによってスタックからポップされます。 最後の画面をスタックからポップすると、アプリケーションはデフォルトでになります。
MyUiApplicationという名前のUiApplicationを実行している場合、pushScreen(new SomeScreen())を呼び出して、スタックに画面を追加できます。
画面、ほとんどのBlackBerryのスクリーンは、呼び出される)(BlackBerryでESCAPEボタンが自然popScreenを引き起こし、画面を閉鎖することを意味し、DEFAULT_CLOSEフラグで作成されているように、MainScreen由来する場合。もちろん、keypressまたはtrackwheel/trackballのクリックに続いてpopScreen()を呼び出すこともできます。画面はclose()を呼び出すこともできますが、同じ結果が得られます。画面はスタックからポップされ、アプリケーションは前の画面に戻り、最後の画面が表示スタックからポップされるとアプリケーションが終了します。
アプリケーションがUiApplicationとして作成されていない場合、または最初に画面がUI以外のスレッド(バックグラウンドスレッドなど)からディスプレイスタックにプッシュされた場合は、 UIのスレッドから行われたも表示されます。これは、イベントロックが、UI操作を実行する前にアプリケーションクラスにあることを確認することによって行うことができます(この状況では通常、invokeLaterを呼び出します)。
元の画面はグローバルスクリーン(他のすべての画面の上にモードレス)としてスタックにポップされた場合、それはのようなものを使用してスタックからポップされなければならない:
Ui.getUiEngine() .dismissStatus(this);派生画面の
いずれの場合においても、OnCloseの()とクローズをオーバーライド()トラップにデバッグおよびさらなる分析のために発生した例外を、あなたができるようになります。
- 1. install4jの以前の画面に戻るにはどうすればいいですか?
- 2. タイムアウトリクエスト後に前の画面に戻るにはどうすればよいですか?
- 3. プッシュされたBlackBerry画面から親画面に戻る
- 4. 枝の前のページに戻るにはどうすればいいですか?
- 5. リアクションナビゲーション、特定の画面に戻るにはどうすればいいですか?
- 6. 画面を透明にするにはどうすればいいですか?
- 7. ランチャーページに戻るにはどうすればいいですか?
- 8. シリアル画面をクリアするにはどうすればいいですか?
- 9. の画面内のiframeを画面の幅の33%にするにはどうすればよいですか?
- 10. 画面上でキーボードを聴くにはどうすればいいですか?
- 11. イメージビューを画面から消すにはどうすればいいですか?
- 12. vuefire show loading画面を作るにはどうすればいいですか?
- 13. アンドロイドの画面を画面の下から「スライドアップ」するにはどうすればよいですか?
- 14. スプラッシュ画面の前に表示される白い画面を削除するにはどうすればよいですか?
- 15. メディアクエリ画面を変更するにはどうすればよいですか?
- 16. スワイプルイントロ画面を構築するにはどうすればよいですか?
- 17. BlackBerryでモノスペースフォントを使用するにはどうすればよいですか?
- 18. Blackberryで複数の画像を電子メールで添付するにはどうすればよいですか?
- 19. モノドロイド画面のタイトルバーのように画像を置くにはどうすればいいですか?
- 20. 画像を画面の中央に配置するにはどうすればいいですか?
- 21. スクロールビュー/グリッド内の画像を画面の幅にフィットさせるにはどうすればいいですか?
- 22. Activity2で戻るボタンを押した後で、Activity1で画面をスクロールダウンできるようにするにはどうすればいいですか?
- 23. React Nativeの次の画面に移動する前に、現在の画面をポップするにはどうすればよいですか?
- 24. どの画面を画面の上部にスクロールしているのかをプログラムで確認するにはどうすればよいですか?
- 25. Appcelerator Titanium - 画面下部に画像を配置するにはどうすればいいですか?
- 26. alt + print画面に似た画像をキャプチャするにはどうすればいいですか?
- 27. cocos2dのシーンで画面の向きを横に固定するにはどうすればいいですか?
- 28. Javascriptで画面の領域から画像を作成するにはどうすればよいですか?
- 29. アニメーションで画面を左から右に移動するにはどうすればいいですか?
- 30. Blackberry OS 6のポップアップ画面で画面を更新する方法[前へ]
について、あなたはどのようなエミュレータ/ソフトウェアを求めていますか? – brian