私は新しい Android 開発者です。
iOS にはUINavigationController
、新しい viewController をスタックにプッシュし、「戻る」ボタンを押して前のビューに戻ることができるクラスが呼び出されます。
[self pushViewController: myViewController animated:YES]
私の知る限り、のインスタンスにUINavigationController
はコントローラーを保持するプロパティがあります。したがって、各コントローラのすべての属性もスタックに保存されます。
Androidでも同様のことができるかどうか疑問に思っています。これで、分割ビューを iOS としてシミュレートする 2 つのフラグメントができました。ListFragment
左側に `lsit ビュー* を表すサブクラスを作成し、右側にアイテムの詳細を表す別のフラグメントをサブクラス化します。
ユーザーがリスト ビュー内のアイテムの 1 つをタップすると、別のリストに移動します。
SecondFragment newFragment = new SecondFragment();
FragmentTransaction transaction = getSupportFragmentManager()
.beginTransaction();
transaction.replace(R.id.fragment_container, newFragment);
transaction
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
getActionBar().setTitle("new items");
transaction.commit();
getActionBar().setDisplayHomeAsUpEnabled(true);
invalidateOptionsMenu();
しかし、戻るボタンをクリックして前のビューに戻りたいです。次のようにコードを追加する必要があることを認識しています。
transaction.addToBackStack(null);
ただし、戻るボタンをタップするとアプリケーションが終了します。
戻りたい場合は、別のFragment
取引を行う必要があります。ListFragment
問題は、コンテンツを に保存するのではなく、項目リストとして保存したいということMainActivity
です。以前のリスト ビューのコンテンツをスタックから取得する方がはるかに簡単です。
AndroidでiOSで同様のことを行う方法はありますUINavigationController
か?