Android layout 我的安卓应用程序(安卓2.3.5)中出现了奇怪的行为——事情变得错误了

Android layout 我的安卓应用程序(安卓2.3.5)中出现了奇怪的行为——事情变得错误了,android-layout,android,Android Layout,Android,我在开发的应用程序中遇到了一些非常奇怪的行为。该应用程序不是很高级,它在sqlite数据库中存储了几个位置,并显示在listview、mapview等中。因此,在将其部署到手机后浏览我的应用程序时,一切都很好,但一段时间后,一个listview不会膨胀。此时会出现一个滚动条,好像项目在那里,但我看不到它们。我按下后退按钮关闭应用程序。当重新访问应用程序时,我的第一个视图(有两个按钮)变得一团糟。按钮填满了视口,背景消失了,等等。我不知道怎么回事 还有其他人面临这些问题吗?我的手机是HTC Des

我在开发的应用程序中遇到了一些非常奇怪的行为。该应用程序不是很高级,它在sqlite数据库中存储了几个位置,并显示在listview、mapview等中。因此,在将其部署到手机后浏览我的应用程序时,一切都很好,但一段时间后,一个listview不会膨胀。此时会出现一个滚动条,好像项目在那里,但我看不到它们。我按下后退按钮关闭应用程序。当重新访问应用程序时,我的第一个视图(有两个按钮)变得一团糟。按钮填满了视口,背景消失了,等等。我不知道怎么回事

还有其他人面临这些问题吗?我的手机是HTC Desire HD,搭载安卓2.3.5

如果你知道我的意思的话,这个应用程序相当“重布局”。listview项目有自定义的背景图像,我正在使用自定义字体等。但应用程序运行平稳,直到它崩溃并显示/不显示所有错误

我的第一个想法是有某种记忆问题,想法

编辑: 我相信这可能与定义和使用#00000000作为透明颜色有关。改用@android:color/transparent

解决方案:
所以,在做了一些测试之后,我发现我之前在编辑中提到的内容确实是这个问题的原因。我在colors.xml中将透明颜色定义为#00000000。这似乎奏效了,有时。。。而其他时候,它会抓取一个可绘制文件,但不是一个名为“透明”的可绘制文件,它会抓取任何可绘制文件。奇怪但真实。

如果存在内存错误,您应该能够在logcat中捕获它们。您将收到“VM在xxxx字节分配上失败”消息(或类似消息)

愚蠢/愚蠢的回答:当我在应用程序中遇到布局问题时,通常是因为我需要在更改布局后进行干净的构建。你可能想从那里开始


编辑:您也可以尝试emulator,如果您怀疑内存问题,可以用一个小堆启动emulator,以迫使问题更快发生。您还可以在DDMS或Eclipse MAT中检查堆的使用情况,以查看它是否泄漏。

经过一些测试,我终于找到了这个问题的原因。我在colors.xml中将透明颜色定义为#00000000。这似乎奏效了,有时。。。而其他时候,它会抓取一个可绘制文件,但不是一个名为“透明”的可绘制文件,它会抓取任何可绘制文件。奇怪但真实


因此,要解决此问题,当您希望在视图背景上显示透明度时,应该使用@android:color/transparent

即使使用
@android:color/transparent
,我在Galaxy选项卡上也遇到了同样的问题。只能通过将
android:background=“@color/transparent”
替换为
android:background=“@null”

来修复它,谢谢您的回复。我没有收到任何“虚拟机在xxxx字节分配上失败”的消息,我已经做了几次清理。我看了一下布局,我想我可能已经找到了问题所在。在我的“关于应用”活动中,我在滚动视图中放置了一个相当大的图像。scrollview还有一个相当大的背景图像(够傻了)。所以我去掉了背景图像,用一个重复的图像替换它,删除了scrollview中的图像,问题似乎消失了。非常奇怪。请对你的问题给出一个明确的答案,让每个人都看到你已经找到了解决问题的方法。谢谢你们的调查,它真的帮助了我们。很抱歉,我现在发布了我的问题的答案,并将其标记为已接受。很高兴我能帮忙!:)