Android 启动活动以替代对话是一种不好的做法吗?

Android 启动活动以替代对话是一种不好的做法吗?,android,Android,就个人而言,我喜欢打开一个新的活动而不是对话框,因为我可以更容易地控制设计(例如布局、不同的窗口选项、大小)。另外,我觉得处理所有组件的侦听器等要简单得多。但是,运行对话框而不是活动有什么好处吗?它是否更快、占用内存更少?首先,您可以创建一个自定义对话框,使其外观基本上符合您的需要。但是,作为对您问题的直接回答,我能想到的唯一缺点是a)原始活动现在处于桌面状态,这意味着它可能会被终止;b)您正在使用更多资源来添加整个活动,而不是对话框。话虽如此,一切都有时间和地点 我不知道性能优势(如果有的话)

就个人而言,我喜欢打开一个新的活动而不是对话框,因为我可以更容易地控制设计(例如布局、不同的窗口选项、大小)。另外,我觉得处理所有组件的侦听器等要简单得多。但是,运行对话框而不是活动有什么好处吗?它是否更快、占用内存更少?

首先,您可以创建一个自定义对话框,使其外观基本上符合您的需要。但是,作为对您问题的直接回答,我能想到的唯一缺点是a)原始活动现在处于桌面状态,这意味着它可能会被终止;b)您正在使用更多资源来添加整个活动,而不是对话框。话虽如此,一切都有时间和地点

我不知道性能优势(如果有的话),但是我可以说,我使用活动而不是对话框的主要原因之一是在状态更改时如何处理行为。。。e、 g.屏幕方向改变。当屏幕旋转时,即使是最基本的对话框也会引发异常。您是否考虑过将
活动
主题
设置为
对话框
(在Android清单中)?这将以对话框的形式启动
活动
android:theme=“@android:style/theme.Dialog”
我有很多可以正确旋转的对话框……我从来没有想过桌面是个问题,但这是一个很好的观点。通常,我使用活动来创建更健壮的对话框,使用对话框来创建基本对话框。但听起来这不是什么大问题。