微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Android – 如何使用视图制作复杂的标签式应用

关于Stack Overflow的第一个问题,如果它没有很好地表示道歉.

我正在开发一个相对复杂的选项卡式应用程序,并且在遇到不推荐使用ActivityGroup和tabactivity的信息之前已经设置了基础知识,并且首选模型是使用视图.

我没有使用视图,这是一个关于体系结构而不是语法的问题(这就是为什么我没有发布任何代码).具体来说,我应该如何重组应用程序以使用视图而不是Intent启动的活动.

该应用有五个选项卡;两个持有单一布局,没有问题.其他三个选项卡正在运行具有2-5个不同活动的ActivityGroup(即运行设置活动的选项卡,其中单击每个视图会启动一个处理该特定设置的新活动,按后退按钮可返回更广泛的设置活动/视图).如果我将每个Tab保持为tabactivity,那么将这些内部转换更改为视图仍然相当容易,而不是单独的活动.

主要问题是使用ONLY视图,根本没有tabactivity / Activity组.我所做的绝大多数研究都是讨论是否使用“活动”或“视图”,或者是否使用特定语法.我无法清楚地了解如何实际转换到整个应用程序中的视图.

>如果我这样做,整个应用程序现在不会在一个Activity中运行 – 托管标签式布局的那个?
>如果(1)为真,如何管理?尽管不推荐使用ActivityGroup,但所有Android文档似乎仍然表明,对于功能的各个方面,最好使用单独的活动 – 这是有道理的. Android开发团队是否只是决定堆栈和设备的成本使tabactivity实现无效?
>如果应用程序在一个Activity中运行,该Activity为每个选项卡管理不同的视图(然后在必要时在一个选项卡中包含不同的视图),我是否应该使用一个巨大的onClick方法来处理来自任何可点击视图的所有点击,处理基于的输入哪个视图有效?或者我应该以编程方式注册和取消注册我的所有听众?
>使用单个Activity,任何点击监听器或任何广播接收器都不会一直运行,即使在不必要的情况下也会消耗资源吗?
>使用单个Activity,后退按钮将从其功能中的任何位置退出整个应用程序.如果我正在使用视图,我是否必须始终覆盖onBackpressed()并仔细管理应用程序行为以强制它“像Android应用程序一样”?
>上午我觉得这完全错了吗?当我应该采用完全不同的设计方法来使用制表符和视图时,我可能无意中尝试使用视图重新创建ActivityGroup和tabactivity功能.

当谷歌的人们说我们不再将活动当作标签时,马克墨菲先生如此强烈同意,我倾向于相信.我根本无法研究一种切换方式而不需要手动重新创建大量的Activity功能(这可能包括各种脏黑客).

任何愿意解决这种模糊和被覆盖的主题的人都要提前感谢.

解决方法

使用 Fragments是执行标签式ui组件的新标准,我认为你必须忽略它们,因为它们是你上述所有问题的缺失部分.祝好运.

不要忘记使用兼容性库会将Fragment支持一直带回1.6.

here一个简单的Google推荐教程,用于在TabHost中使用Fragments.

原文地址:https://www.jb51.cc/android/315312.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐