Activity界面刷新
2015-11-17 11:41
274 查看
Activity中常用的界面刷新:
1.onResume()
这个方法是Actvitity中最常用的方法,把要刷新的控件和操作放到该方法中,当再次返回到该Activity时程序会自动调用onResume()方法实现界面的数据显示刷新。
2.onActivityResult()
ActivityA:
StartActivityForResult(intent,requestCode);
onActivityResult( int requestCode,int resultCode,Intent data){
if( resultCode==RESULT_OK){
//重新刷新数据,界面
}
}
ActivityB:
setResultRESULT_OK);
在ActivityA中通过StartActivityForResult(),开启一个ActivityB;当从ActivityB返回到ActivityB时调用ActivityA中的onActivityResult()重新刷新数据界面。
当界面控件或者数据变化不大时使用onResume()较方便;当界面的控件或者数据变化较大时,或者重新加载的界面数据较大时,使用onActivityResult()较好。比如,ActivityA界面有一个listiew,里面有很多item数据较多。如果使用onResume()刷新数据时每次重新回到这个ActivityA时都要重新加载一遍listview数据,造成不必要的内存和流量浪费。若使用onActivityResult()时,可以设定只有当resultCode==RESULT_OK时再刷新listview。
1.onResume()
这个方法是Actvitity中最常用的方法,把要刷新的控件和操作放到该方法中,当再次返回到该Activity时程序会自动调用onResume()方法实现界面的数据显示刷新。
2.onActivityResult()
ActivityA:
StartActivityForResult(intent,requestCode);
onActivityResult( int requestCode,int resultCode,Intent data){
if( resultCode==RESULT_OK){
//重新刷新数据,界面
}
}
ActivityB:
setResultRESULT_OK);
在ActivityA中通过StartActivityForResult(),开启一个ActivityB;当从ActivityB返回到ActivityB时调用ActivityA中的onActivityResult()重新刷新数据界面。
当界面控件或者数据变化不大时使用onResume()较方便;当界面的控件或者数据变化较大时,或者重新加载的界面数据较大时,使用onActivityResult()较好。比如,ActivityA界面有一个listiew,里面有很多item数据较多。如果使用onResume()刷新数据时每次重新回到这个ActivityA时都要重新加载一遍listview数据,造成不必要的内存和流量浪费。若使用onActivityResult()时,可以设定只有当resultCode==RESULT_OK时再刷新listview。
相关文章推荐
- 文字保护纱-Material Design
- 入职开发工作3个月的总结
- xib文件加载控制器View的一些原理
- 按钮随意隐藏于显示
- linux redhat 操作/命令
- EF 6.0 Code First 迁移MySql数据库
- Android统计应用内方法数目
- 关于自己的maven的学习
- 17,原码,反码,补码
- c# 程序突然 让win7系统屏幕不能休眠了
- world特殊控制符输入
- [LintCode] Remove Duplicates from Sorted List II
- Mysql
- Linux入门学习教程:虚拟机体验之KVM篇
- Android学习笔记之应用单元测试实例分析
- 客户端程序猿技能树
- android——material design实现Tab标签
- 【翻译】Zabbix触发器trigger支持的函数说明
- LeetCode---Combinations
- touchscreen的B协议上报部分