0

我目前正在尝试使用 Eclipse 为 Android 手机开发基于图像处理的应用程序。我的应用程序也包含几个按钮和子菜单按钮。我试图使其通用(以便它可以在任何分辨率上运行)使用不同分辨率的开关盒,从而为不同的分辨率使用不同的资源。问题是,我遇到了内存过载问题。它在 Xperia U 上运行良好,但在 Galaxy S 上运行良好,并且在模拟器中也崩溃了。我没有在我的应用程序中使用 XMl,而是以编程方式设计了整个 UI。请告诉我如何解决这个问题。任何帮助将不胜感激。提前致谢!

4

1 回答 1

1

好吧,这个问题非常笼统,但这里有一些可能会有所帮助的要点:

  1. 以编程方式设计所有内容意味着您的应用程序会很慢,并且会在运行时创建所有内容。它不是通过不使用 XML 来使用 Android UI 的设计优化。

  2. 您使用什么上下文来创建 UI 对象。如果您将 UI 对象绑定到应用程序上下文而不是活动的上下文,则 UI 的所有组件都将保留在内存中,除非应用程序被终止。与活动不同,一旦活动被销毁,它的所有 UI 组件都会被杀死。

  3. 您可以通过重用在 XML 中创建的组件来使用 XMl inflator 来减少 Java 中的工作。这将帮助您优化您重复使用的一些子组件。

于 2013-02-22T00:31:50.353 回答