Android选项卡中的典型搜索、结果和详细信息工作流

Android选项卡中的典型搜索、结果和详细信息工作流,android,view,android-activity,tabs,Android,View,Android Activity,Tabs,所以,几天来,我一直在绞尽脑汁寻找一个好的解决方案,我被卡住了 我在一个选项卡中有一个搜索屏幕(活动),在用户输入一个值并单击“搜索”后,我希望结果返回到同一选项卡中,然后如果选择了结果中的一个项目,则在同一选项卡中显示更详细的结果。我现在在单独的活动中工作,甚至在选项卡中工作的第一步,但只要我调用活动来处理搜索结果。。。i、 e 星触觉(i) 对于“结果”活动,显示的结果不在选项卡中 我有一个非常困难的时间让这个流程在一个标签下工作。你有没有想过如何做到这一点 我一直听说应该使用Android

所以,几天来,我一直在绞尽脑汁寻找一个好的解决方案,我被卡住了

我在一个选项卡中有一个搜索屏幕(活动),在用户输入一个值并单击“搜索”后,我希望结果返回到同一选项卡中,然后如果选择了结果中的一个项目,则在同一选项卡中显示更详细的结果。我现在在单独的活动中工作,甚至在选项卡中工作的第一步,但只要我调用活动来处理搜索结果。。。i、 e

星触觉(i)

对于“结果”活动,显示的结果不在选项卡中

我有一个非常困难的时间让这个流程在一个标签下工作。你有没有想过如何做到这一点

我一直听说应该使用Android视图而不是活动,但我是否可以假设我现在对3个活动的所有逻辑都需要进入1个活动中,然后我需要为每种情况设置内容和状态?另外,历史堆栈不工作吗?因为按后退按钮会让用户退出 应用程序,而不是将它们从搜索结果带到搜索屏幕,或将详细信息带到搜索结果等等。这看起来像一团乱

任何人都可以展示一个更复杂的选项卡示例,或者如何在选项卡中保留一个简单的搜索、结果和详细工作流程


我看到了一些关于将活动保持在“一张标签内”这一概念的问题,但没有很好的解决方案。请帮忙。

我想你必须把所有东西都放在一个活动中。您需要捕获“后退”按钮并相应地更改应用程序的状态。如果他们在不同的活动中,你就不会真正停留在你的标签上,甚至你的屏幕上,而是在每一步重新创建他们

呆在活动中会更有效率,但你可能会做更多的工作。

我做了以下几点:

  • 使我的默认搜索活动,搜索引擎
  • 进行结果活动,搜索结果
  • 制作一个SearchGroup活动并将其放置在我的tabhost中
  • 在检索我的搜索结果时,我通过intent将它们从搜索引擎发送到我的搜索结果活动,并完成搜索引擎活动
  • 在SearchResults活动的onCreate方法中,我显示了它们
  • 有点像黑客,但它是有效的。。。
    马克

    谢谢你,本。我对安卓有点失望。我已经考虑过您提示的替代方案,即“重新创建”每个屏幕的选项卡。我同意这可能效率较低,因为需要一项新的活动,但所有的历史资料都是开箱即用的。我希望能有一些灵丹妙药:)但是,唉,也许它不存在。我认为问题在于,你要求后退按钮做的事情比预期的要多。它的目的是带你回到一堆不同的屏幕。有点像浏览器上的关闭按钮或后退按钮。作为一个用户,我倾向于发现标签对于android来说并不是一个很好的布局选择。相反,我可能会选择打开不同屏幕的按钮。然后单独的行动是有意义的,后退按钮会做你想做的。我完全同意本托宾的观点。选项卡是表示元素,而不是导航元素。这在安卓系统中尤其如此,不过在其他地方似乎也是一条普遍的经验法则。这很有趣。我在这里坐了大约10分钟思考你的问题。你需要问问自己为什么你认为你需要这样做?你想解决什么问题?如果提高可用性是您的目标,那么应该避免更改后退按钮的行为。使用这些标签的目的是什么?这个应用程序实际上有很多标签,“搜索”只是其中之一。选项卡的要点是划分功能。如果有人想说,搜索一个产品,他们应该能够使用“搜索”选项卡并进行这些活动。要查找最近的门店位置,还有另一个“位置”选项卡。“特色菜”是浏览特色菜的另一个选项卡。这与在web浏览器中保留最后状态的选项卡没有什么不同。我想我不明白为什么要求这个功能这么奇怪。