Android onWindowFocusChanged函数详解
2016-04-21 18:20
495 查看
Activity生命周期中,onStart, onResume, onCreate都不是真正visible的时间点,真正的visible时间点是onWindowFocusChanged()函数被执行时。
当onWindowFocusChanged被执行起,用户可以与应用进行交互了。获取view的宽高以及位置可以试着在onWindowFocusChanged()里面调用。
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
if (hasFocus) {
layout_yewufenbuanddapanTop = layout_yewufenbureplace.getTop();//获取控件在整个Activity里的位置
layout_newsannouncereportTop = layout_newsannouncereportplace.getTop();
layout_jiankuangTop=layout_jiankuangreplace.getTop();
}
}
有个问题,要是该控件的上面有个View 的显示visible 一会为gone,一会为Viesible,这样获取到的位置是不准的。
解决方法是判断要是view显示的时候,重新获取view 的位置。
当onWindowFocusChanged被执行起,用户可以与应用进行交互了。获取view的宽高以及位置可以试着在onWindowFocusChanged()里面调用。
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
if (hasFocus) {
layout_yewufenbuanddapanTop = layout_yewufenbureplace.getTop();//获取控件在整个Activity里的位置
layout_newsannouncereportTop = layout_newsannouncereportplace.getTop();
layout_jiankuangTop=layout_jiankuangreplace.getTop();
}
}
有个问题,要是该控件的上面有个View 的显示visible 一会为gone,一会为Viesible,这样获取到的位置是不准的。
解决方法是判断要是view显示的时候,重新获取view 的位置。
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories