1、加速本地图片获取速度: 在向sd卡写文件的时候,把url和图片存储位置存储到xml文件中,作为其中的一项。 在应用程序启动的时候,读取该xml文件,把文件内容载入到内存map中。
2、防止内存OOM:
1)在decode的时候,inJustDecodeBounds设置为true的时候,获取到outWidth根据它再计算inSampleSize,最后再decodeFile
2)recycle不用的图片。方法是为每个bitmap标记对应的activity,在activity销毁的时候,再recycle。3)查询路径 内存--》磁盘--》网络获取
3、ListView的优化:
1)adapter的getView方法,判断convertview是否为null,如果不为null即可获取tag,否则需要初始化后再设置它的tag。即已经初始化的view不需要再初始化
2)当一个listview里面放置多种布局的时候,需要重写getItemViewType和getViewTypeCount两个方法3)baseAdapter重写
4、Activity的四种模式:standard singleTop singleInstance singleTask
1)standard:标准模式 在一个任务栈中可以有多个实例
2)singleTop:如果本次启动的activity已在栈顶,则不需要重新启动一个新的本activity FLAG_ACTIVITY_SINGLE_TOP
3)singleInstance:总是在新的栈中实例化,而且始终是出于栈底的 FLAG_ACTIVITY_NEW_TASK
4)singleTask:如果该activity的taskAffinity属性和该栈中栈底的taskAffinity属性相同,则在本栈中查找是否有该activity,如果有则将它上面所有的activity都destroy掉,否则在栈顶实例化一个,此时类似于FLAG_ACTIVITY_SINGLE_TOP ;如果taskAffinity属性不同,则在新的栈中实例化一个activity,同时处于栈底,此时类似于FLAG_ACTIVITY_NEW_TASK