android - 添加带有重试按钮的警报对话框

标签 android

我正在做一个项目,如果手机没有互联网连接,就会出现一个警告对话框。 此警报对话框显示网络不可用,并有一个“重试”按钮,用户可以在其中重试互联网连接测试。

我怎样才能正确实现这个按钮?是否有“goto”语句以便在没有互联网连接时可以重复?我尝试了标记的 break 并继续它没有用。

这是我的代码:

if(isNetworkAvailable())
    {
        GetBlogPostsTask getBlogPostsTask = new GetBlogPostsTask();
        getBlogPostsTask.execute();
    }
    else
        {
            AlertDialog.Builder builder = new AlertDialog.Builder(this);
            builder.setTitle("ERROR !!");
            builder.setMessage("Sorry there was an error getting data from the Internet.\nNetwork Unavailable!");
;
            builder.setPositiveButton("Retry", new DialogInterface.OnClickListener()
            {
                @Override
                public void onClick(DialogInterface dialog, int which)
                {

                }
            });
            AlertDialog dialog = builder.create();
            dialog.show();
            Toast.makeText(this, "Network Unavailable!", Toast.LENGTH_LONG).show();
        }

最佳答案

这只是一个示例,您应该将 AlertDialog 实现为全局变量,而不是每次尝试发出请求时都创建一个。

public void runTask () {
    if(isNetworkAvailable())
    {
        GetBlogPostsTask getBlogPostsTask = new GetBlogPostsTask();
        getBlogPostsTask.execute();
    } else {
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("ERROR !!");
        builder.setMessage("Sorry there was an error getting data from the Internet.\nNetwork Unavailable!");
        ;

        AlertDialog dialog = builder.create();
        builder.setPositiveButton("Retry", new DialogInterface.OnClickListener()
        {
            @Override
            public void onClick(DialogInterface dialog, int which)
            {
                dialog.dismiss();
                runTask();
            }
        });

        dialog.show();
        Toast.makeText(this, "Network Unavailable!", Toast.LENGTH_LONG).show();
    }
}

关于android - 添加带有重试按钮的警报对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24526981/

相关文章:

android - 方向更改后恢复 GridView 数据

android - 关闭声音效果

Android FCM 推送通知图标未显示在奥利奥设备中

android - 适用于 Amazon Kindle HDX 7"高清屏幕的正确布局资源文件夹

android - 如何在 eclipse IDE 中混淆我的 android 项目?

没有文本显示的 Android BottomNavigationView 项目布局也没有隐藏在滚动中

android - 如何绘制带状线作为背景

android - 在 android 中以编程方式创建布局 - 问题

android - 如何在 Eclipse 中将 android 项目转换为库项目?

android - Unity SignReleaseBundle失败