Android高级编程
2013-03-13 10:39
316 查看
一、提高UI性能
1、提高Adapter和AdapterView的效率
重用已生成的Item View添加ViewHolder,避免重复查找需要修改的控件
缓存Item数据
分段现实
实例:
class OptAdapter extends BaseAdapter{ List<String> list; LayoutInflater inflater; ViewHolder viewHolder; ... @Override public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub if(convertView == null){ convertView = inflater.inflate(R.layout.optitem, parent, false); TextView textView1 = (TextView) convertView.findViewById(R.id.tv1); TextView textView2 = (TextView) convertView.findViewById(R.id.tv2); viewHolder = new ViewHolder(); viewHolder.setTextView1(textView1); viewHolder.setTextView2(textView2); viewHolder.setString(list.get(position).toString()); convertView.setTag(viewHolder); }else{ viewHolder = (ViewHolder) convertView.getTag(); viewHolder.setString(list.get(position).toString()); } viewHolder.getTextView1().setText(viewHolder.getString()); viewHolder.getTextView2().setText(viewHolder.getString()); return convertView; } public static class ViewHolder{ TextView textView1,textView2; String string; public TextView getTextView1() { return textView1; } public void setTextView1(TextView textView1) { this.textView1 = textView1; } public TextView getTextView2() { return textView2; } public void setTextView2(TextView textView2) { this.textView2 = textView2; } public String getString() { return string; } public void setString(String string) { this.string = string; } } }
2、布局优化
使用观察布局工具 Hierarchy View使用布局优化工具 lint
优化布局的层次结构
3、优化背景图
动态设置getWindow.setBackgroundDrawableResource(id)静态设置,自定义主题
res/values/theme.xml
<resources xmlns:android="http://schemas.android.com/apk/res/android"> <style name="Theme.testTheme" parent="android:Theme"> <item name="android:windowBackground">@drawable/ic_launcher</item> </style> </resources>调用android:theme = "@style/Theme.testTheme"
4、使用ViewStub
延迟加载不常用控件提高改变布局速度
使用场景
界面频繁切换
界面高速切换
使用方法
相关文章推荐
- android 4 高级编程 第一章摘
- 1 android高级编程——程序启动动画的实现
- 关于Android的径向渐变高级编程的实现
- 《Android 4游戏高级编程(第2版)》书评
- 关于Android的径向渐变高级编程的实现
- 《Android 4游戏高级编程(第2版)》书评
- Android界面编程——Android高级组件
- 新建一个分类:来自《Android 4 高级编程(第三版)》
- 《Android4 高级编程》笔记之Application
- Android 4高级编程(第3版)
- Android多媒体高级编程(一)——Camera和简单的图像处理
- 《Android 4高级编程》学习摘要
- Android 4高级编程(第3版)》
- Android 4 游戏高级编程(第2版)
- 通过OpenGL ES混合模式缩放视频缓冲区-Android 4游戏编程高级篇
- android高级编程学习笔记-ToDoList第一版
- 《android 4 游戏高级编程》读后感
- android_c++ 高级编程NDK学习笔记二
- android高级编程之加载大图片到内存
- android_c++ 高级编程NDK学习笔记三