Android 2.1で開発した3つのViewFlipperレイアウトがあり、 '戻る'ボタンを押すと明示的にプログラムを1つ戻すようにしました。Android:VIewFlipperとonBackPressedが応答しない
@Override
public void onBackPressed() {
switch (backStatus) {
case 0: finish();
case 1: //TODO Check save
case 2: a.animateLeft(Flipper);
case 99: setContentView(R.layout.main);
}
}
同じコードでonKeyDown/Up呼び出しを試してみました。
明らかにbackStatusは別のインクルードに移動すると変更されます。 問題は、私は3つ目の例( "case 2")includeにインクルード2のオプションのリストを挙げます。ユーザーがキャンセルして戻るボタンを押したければa.animateLeft(Flipper)を呼び出す)、それは2番目のインクルードにまっすぐに戻るべきですが、そうではありません。それは第1のインクルードにまっすぐに戻る。さらに、ボタンのクリックリスナーを無効にするので、応答しない。
「ケース2」をそのまま残しておくと、それを完全に無効にしますが、これは明らかに良いことではありません。左と右をアニメートするためのすべてのコードは画面上のボタンからうまく機能し、正しいbackStatusフラグはフリッパーを切り替えるときに渡されます。誰も私はこの小さなピックルを解決する方法を知っていますか?
ありがとうございます、AW。
私はJavaを再学習する必要があると思う、ありがとう –