首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何向用户显示网络连接状态

如何向用户显示网络连接状态
EN

Stack Overflow用户
提问于 2013-02-23 15:33:15
回答 1查看 116关注 0票数 0

我的应用程序只有在有网络连接的情况下才能工作。因此,我在应用程序的启动和简历上检查了相同的内容。

我有一个收听网络变化的广播接收器。

如果没有网络,我想显示一个简单的‘无网络连接’视图。“无网络连接”包含一个文本视图,说明没有带悲伤面孔的互联网。

当网络变得可用时,从广播接收器,我想改变‘无连接视图’到我的‘仪表板’视图。

“仪表板”视图具有应用程序的主要业务逻辑和工作流程。

因此,取决于网络状态,活动在两个视图之间振荡。

实现这一目标的最佳方法是什么?

Case1:两个视图都有自己的活动。问题:我需要处理'No Connectivity‘视图的反按压和lifecyle事件,这些都是多余的。

Case2:根据网络状态动态地使用1活动和开关视图

Case3:在同一个xml文件中有两个布局(相对布局)。根据状态打开/关闭可见性。

Case4:使用充气器动态切换视图。

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2013-02-23 16:36:32

使用一个带有两个片段的活动:ConnectStatusFragment,DashboardFragment

代码语言:javascript
复制
private void showFramentDepends(){
    if(networkisfine){
        // init your fragmnet
        switchFragment(ConnectStatusFragment);
    }else{
        switchFrament(DashboardFragment);
    }
}

private void switchFragment(Fragment fragment){
    FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
    ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
    ft.replace(R.id.content_fragment, fragment);
    ft.commit();
}

您的活动布局xml文件应该如下所示:

代码语言:javascript
复制
<FrameLayout
    android:id="@+id/content_fragment"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1">
</FrameLayout>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15042192

复制
相关文章

相似问题

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