`
wangchangshuai0010
  • 浏览: 120798 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

关于android activity加载完毕事件

阅读更多

很多人都想在activity加载完毕的同时处理一下事件,如弹出一个popWindow或者其他,但在onCreate方法中处理这个时间的话,程序会报错:大意是activity还没有加载完,不能处理弹窗事件,其实不光是弹窗,只要用到activity.this的事件,在activity加载完之前都不能处理,原因很明显——popWindow或者是dialog的显示都要依附在一个parent Activity上,所以在Activity加载完之间,他们都不能显示。

不过万幸的是android给开发者提供了一个方法,可以解决这个问题,这个方法就是onWindowFocusChanged()

其说明如下:

Called when the currentWindowof the activity gains or loses focus.This is the best indicator of whether this activity is visible to the user. The default implementation clears the key tracking state, so should always be called.

Note that this provides information about global focus state, which is managed independently of activity lifecycles. As such, while focus changes will generally have some relation to lifecycle changes (an activity that is stopped will not generally get window focus), you should not rely on any particular order between the callbacks here and those in the other lifecycle methods such asonResume().

As a general rule, however, a resumed activity will have window focus... unless it has displayed other dialogs or popups that take input focus, in which case the activity itself will not have focus when the other windows have it. Likewise, the system may display system-level windows (such as the status bar notification panel or a system alert) which will temporarily take window input focus without pausing the foreground activity.

Java代码收藏代码
  1. @Override
  2. publicvoidonWindowFocusChanged(booleanhasFocus)
  3. {
  4. if(hasFocus)
  5. {
  6. }
  7. }
分享到:
评论

相关推荐

    Android 使用AsyncTask 后监听异步加载完毕方法

     Android以Java为编程语言,从接口到功能,都有层出不穷的变化,其中Activity等同于J2ME的MIDlet,一个 Activity 类(class)负责创建视窗(window),一个活动中的Activity就是在 foreground(前景)模式,背景运行...

    Android 使用AsyncTask 后监听异步加载完毕的动作

    AsyncTask的使用方法网上有很多例子,使用起来也非常的方便。...场景模拟当我们在加载一个列表的时候,比如GridView,这时候我们考虑到不阻塞UI的做法,一般会使用线程Thread、Timer或者使用AsyncTask。

    模拟技术中的Android 使用AsyncTask 后监听异步加载完毕方法

     Android以Java为编程语言,从接口到功能,都有层出不穷的变化,其中Activity等同于J2ME的MIDlet,一个 Activity 类(class)负责创建视窗(window),一个活动中的Activity就是在 foreground(前景)模式,背景运行...

    Android代码-and-load-aot

    在调用startActivity方法的时候,就去调用A页面的加载数据方法loadData(),此时开始加载网络数据,同时Acitivity开始初始化加载布局等,等Activity准备好UI需要数据的时候去检查loadData()是否加载完毕,如果完毕了...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    Activity Activity是一个应用程序组件,提供一个屏幕,用户可以用来交互为了完成某项任务,是一个负责与用户交互的组件 SSH 为 Struts+Spring+Hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。...

    Android App实现监听软键盘按键的三种方式

    我们在Android手机上面有时候会遇到监听手机软键盘按键的时候,例如:我们在浏览器输入url完毕后可以点击软键盘右下角的“Go”按键加载url页面;在点击搜索框的时候,点击右下角的search符号键可以进行搜索;或者在...

    WeChatVideoView-Android - 微信 - 朋友圈 - 小视频播放.zip

    播放完毕后可以循环播放播放已经播放过的,是具备本地缓存的,也就是既能播放网络,也能播放本地2,隐藏的低耗电量低内存占用无延迟图与视频切换低耦合,高内聚,几行代码接入,一共3个类解析直观的功能点,几乎就是...

    Android 优化之app启动优化的实现

    App 启动方式 ...类同与冷启动,在这个过程中,屏幕会显示一个空白的窗口(颜色基于主题),直至 activity 渲染完毕。 温启动 介于冷启动和热启动之间,一般来说在以下两种情况下发生: 用户返回退出了 App,

    《自拍教程61》Python adb反复启动退出高德地图App

    并在打开过程中,截一张图,打开加载完毕后再截取一张图, 测试经理希望自动化实现截取一晚上! 准备阶段 adb shell am start + 指定的Package包名 + Activity活动页面,可以打开App 可以通过adb shell 里边的pm ...

    shareSDK分享

    关于具体的分享参数名称,请参考“不同平台分享内容的详细说明”章节的说明。 用户授权 调用ShareSDK中的authorize方法可进行用户授权。代码如下: 1 2 3 4 5 $sharesdk.authorize($sharesdk.platformID....

Global site tag (gtag.js) - Google Analytics