0

我创建了一个应用程序,它提供了关于各种主题和内容的大量信息。我的应用程序有很多图像,所有图像都在 200 到 290KB (jpg) 之间。我有一个带有 Imagebuttons 的滑动抽屉(大约 41 个 ImageButons)。使用这些 ImageButtons 选择类别(例如从主菜单到信息 Activity)时,加载大约需要 2 秒。但是,选择imageButton时,它几乎立即显示图像。有没有办法加快从主菜单到信息活动的加载过程?

4

3 回答 3

1

大约 41 个 ImageButton

真的需要41 个图像按钮吗?它不能更智能吗(例如具有与背景相同的可绘制对象的常规按钮,因此它看起来像图像按钮,并且不需要也不需要打开、解码和使用 41 个图像?也使用 PNG 代替 JPEG 可以改善这一点。但在一般,重新考虑你的用户界面

于 2012-11-25T20:08:38.840 回答
0

一个问题:你的滑动抽屉是做什么用的?一次可以看到多少个按钮?如果您一次只显示几个并通过“从右到左”滑动浏览所有其他内容,那么您真的应该使用ViewPager(我认为是在 api-level 13 中引入的,并且可以通过上述每个 api-level 的支持库获得4)。

它的作用:它只加载可见的 ImageButtons(很像 aListView所做的),因此不需要具有 41 个 ImageButtons 的布局。您只需设计一个Fragment动态获取不同图像按钮的方法。查看文档以获取更多信息:链接

于 2012-11-25T20:46:07.403 回答
0

您必须异步加载图像:界面会立即加载,但图像处理任务是并行完成的,并且您的图像将逐步显示。

基本上,您必须使用AsyncTask. 开发人员门户提供了一个很棒的教程,其中包含可下载和可用的代码示例。 http://developer.android.com/training/displaying-bitmaps/index.html

于 2012-11-25T20:24:17.200 回答