1

好的,我在 DialogPreference 中有一个 ListView,其中填充了扩展 BaseAdapter 的 CustomAdapter。

当对话框第一次出现时,它会显示我从 web api 获得的根目录列表。一旦用户单击其中一个 ListItem,我现在将显示子目录。

在添加新的列表视图之前,我这样做是为了清除当前的列表视图:

lv.setAdapter(null);

我想要一种面包屑,用户可以在其中看到他在哪个目录中,并且可以轻松地单击其中一个面包屑返回该目录。

Root > Channel > SubChannel > SubSub > Foo

我不确定这将如何或应该如何完成。我只想回到基本上,就像后退按钮所做的那样(尽管在这种情况下我没有使用后退按钮)。

感谢您对正确方向的任何建议。

4

1 回答 1

0

您现在如何处理导航?层次结构是否有一定数量的级别,每个级别都有不同的活动,或者您是否在单个活动中执行所有导航?

如果每个级别本质上只是一个与其他级别无法区分的文件夹,那么您很可能希望覆盖 onBackPressed()。如果您处于顶层并且想要退出活动,请调用 super.onBackPressed(); 否则,请自行处理导航,不要调用默认实现。

如果您在每个级别都有不同的活动,并且希望能够从面包屑栏返回活动,则可以调用 finish()。如果您需要返回多个级别,则必须与前一个活动通信,它也需要调用完成()。活动之间通信的最佳方式是使用 startActivityForResult()、setResult() 和 onActivityResult()。

于 2013-03-01T11:12:41.877 回答