【发布时间】:2011-02-17 13:41:39
【问题描述】:
我将尝试解释我究竟需要做什么。
我有 3 个单独的屏幕,分别是 A、B、C。还有另一个称为 HomeScreen 的屏幕,其中所有 3 个屏幕位图都应显示在画廊视图中,用户可以选择他想去哪个视图。
通过仅将所有代码放在 HomeScreen Activity 中,我已经能够获取所有 3 个屏幕的位图并将其显示在画廊视图中。现在,这使代码复杂了很多,我想简化它。
那么,我可以从 HomeScreen 调用另一个 Activity 并且不显示它,而只是获取该屏幕的位图。例如,假设我只调用 HomeScreen 并且它调用 Activity A、B、C 并且没有显示来自 A、B、C 的任何 Activity。它只是通过 getDrawingCache() 给出该屏幕的位图。然后我们可以在 HomeScreen 的 Gallery 视图中显示这些位图。
我希望我已经非常清楚地解释了这个问题。
请让我知道这是否真的可行。
【问题讨论】:
-
我不完全确定,但我认为您将无法做到这一点。问题是活动是要显示给用户的。您可以启动该活动,然后立即将其隐藏,但该活动仍对用户可见一瞬间。它显示的时间足够长以引起注意,因此屏幕闪烁几次会使应用程序看起来不专业。但是,可能有一个命令可以启动一个活动而不显示它;我只是不知道它是否存在。
-
其实我可以做到的。
-
哦,你怎么能调用那个activity却不显示呢?我能不能以当前activity的布局为模板生成位图,同时给它提供不同的内容?
-
在这篇文章中查看答案,我找到了某种解决方案:stackoverflow.com/questions/36424381/…
-
以上答案对我没有任何帮助。这仅适用于stackoverflow.com/a/26086145/8554111