1

わかりました。BaseAdapterを拡張するCustomAdapterが入力されたDialogPreference内にListViewがあります。

ダイアログが最初に表示されると、WebAPIから取得したルートディレクトリのリストが表示されます。ユーザーがListItemの1つをクリックすると、サブディレクトリが表示されます。

新しいリストビューを追加する前に、現在のリストビューをクリアするためにこれを行います。

lv.setAdapter(null);

ユーザーが自分のディレクトリを確認でき、パンくずの1つをクリックしてそのディレクトリに戻ることができる、一種のパ​​ンくずリストが必要です。

Root > Channel > SubChannel > SubSub > Foo

これがどのように行われるのか、または行われるべきなのかわかりません。基本的には、戻るボタンと同じように戻りたいと思います(ただし、この場合は戻るボタンを使用していません)。

正しい方向への提案をありがとう。

4

1 に答える 1

0

現在、ナビはどのように扱っていますか?階層には一定数のレベルがあり、各レベルで異なるアクティビティがありますか?それとも、単一のアクティビティ内ですべてのナビゲーションを実行していますか?

各レベルが基本的に他のレベルと区別できない単なるフォルダーである場合は、おそらく onBackPressed() をオーバーライドする必要があります。最上位にいてアクティビティを終了したい場合は、super.onBackPressed(); を呼び出します。それ以外の場合は、ナビゲーションを自分で処理し、デフォルトの実装を呼び出さないでください。

各レベルで異なるアクティビティがあり、ブレッドクラム バーからアクティビティに戻ることができるようにしたい場合は、finish() を呼び出すことができます。複数のレベルに戻る必要がある場合は、finish() を呼び出す必要があることを前のアクティビティに伝える必要があります。アクティビティ間で通信する最良の方法は、startActivityForResult()、setResult()、および onActivityResult() を使用することです。

于 2013-03-01T11:12:41.877 に答える