首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Android:访问通知栏后加载该活动

Android:访问通知栏后加载该活动
EN

Stack Overflow用户
提问于 2015-11-19 14:58:54
回答 2查看 178关注 0票数 0

如果没有互联网意味着我无法加载网络资源。出于这个原因,我要像“检查互联网连接”这样的祝酒词。祝酒词结束后,用户可以在通知栏启用internet选项,然后返回。当他回来的时候,我想重新装填活动。对于这个要求,我试过

代码语言:javascript
运行
复制
onWindowFocusChanged and onActivityReenter

重写方法,但这些方法不能正常工作。

MyCode

代码语言:javascript
运行
复制
public void onWindowFocusChanged(boolean hasFocus) {
    super.onWindowFocusChanged(hasFocus);
    if(hasFocus){
            Intent intent = new Intent(CommonActivity.this, OtherActivity.class);
            startActivity(intent);  
    }
}

当我使用上面的代码时,我的活动一次又一次地重新加载

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-08-27 08:13:48

通过另一种方式(当我看到flipkart应用程序时,我有了这个想法),我解决了这个互联网检查问题。

  1. 我正在检查互联网连接,如果没有互联网意味着我要重定向到NoInternetActivity,它的设计看起来就像

  1. 当用户点击重试按钮意味着我再次检查互联网。如果互联网是可访问的,就意味着我允许用户访问我的应用程序的主页,否则我将重定向到NoInternetActivity
票数 0
EN

Stack Overflow用户

发布于 2015-11-19 16:07:30

我知道有一个解决办法并不完美,但它会奏效的。定义这样可验证的活动级别

代码语言:javascript
运行
复制
Boolean isAlreadyFocused = false;

然后在您的onFocusChanged方法中这样做。

代码语言:javascript
运行
复制
public void onWindowFocusChanged(boolean hasFocus) {
   super.onWindowFocusChanged(hasFocus);
    if(hasFocus && !isAlreadyFocused ){
        isAlreadyFocused = true;
        Intent intent = new Intent(CommonActivity.this,OtherActivity.class);
        startActivity(intent);  
  }else{
     isAlreadyFocused = false;
    }
}

检查一下,如果这不管用,告诉我。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33807293

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档