我创建了一个应用程序,可以提供有关各种主题和内容的大量信息。我的应用程序有很多图像,都在200到290KB(jpg)之间。我有一个带有图像按钮的滑动抽屉(大约41个ImageButons)。使用这些ImageButtons选择类别(例如,从主菜单进入信息活动)时,加载大约需要2秒钟。但是,在选择图像按钮时,它几乎立即显示图像。有没有办法加快从主菜单到信息活动的加载过程?
答案 0 :(得分:1)
大约41个ImageButons
你真的需要 41个图像按钮吗?它不是更智能的东西(像常规按钮与背景相同的绘图,所以它看起来像图像按钮,不是,并不需要打开,解码和使用41个图像?使用PNG而不是JPEG可以改善这一点。但在一般来说,重新考虑你的用户界面
答案 1 :(得分:0)
您必须异步加载图像:界面立即加载,但图像处理任务并行完成,图像将逐步显示。
基本上,您必须使用AsyncTask
。开发人员门户提供了一个很好的教程,其中包含可下载和可用的代码示例
http://developer.android.com/training/displaying-bitmaps/index.html
答案 2 :(得分:0)
一个问题:你的滑动抽屉是什么?一次可以看到多少个按钮?如果您只是一次显示几个并通过“从右向左”滑动浏览所有其他内容,那么您真的应该使用ViewPager
(在我认为可通过支持库获得的api-level 13中引入每个api级别高于4)。
它的作用:它只是加载可见的ImageButtons(很像ListView
那样),因此不需要一个带有41个ImageButtons的布局。您只需设计一个动态获取不同图像按钮的Fragment
。有关详细信息,请查看文档:{{3}}