Android 为什么警报对话框';闪烁';在建造过程中?

Android 为什么警报对话框';闪烁';在建造过程中?,android,android-webview,android-alertdialog,Android,Android Webview,Android Alertdialog,我有一个非常简单的AlertDialog,其中的WebView为view,它在资产中加载一个本地html文件“页面”(下面的代码)。我的问题是,当它打开的时候,我可以看到它是“构建”的:首先是屏幕中央的一个小对话框窗口中的标题,然后对话框随着文本变大,等等。这是一个令人讨厌的行为。其他的窗户开得很好 这是正常的行为吗?也许是网络视图?有没有办法告诉AlertDialog:“在显示对话框之前先构建它” 谢谢 对话框代码: @SuppressLint({"SetJavaScriptEnabled"}

我有一个非常简单的AlertDialog,其中的WebView为
view
,它在资产中加载一个本地html文件“页面”(下面的代码)。我的问题是,当它打开的时候,我可以看到它是“构建”的:首先是屏幕中央的一个小对话框窗口中的标题,然后对话框随着文本变大,等等。这是一个令人讨厌的行为。其他的窗户开得很好

这是正常的行为吗?也许是网络视图?有没有办法告诉AlertDialog:“在显示对话框之前先构建它”

谢谢

对话框代码:

@SuppressLint({"SetJavaScriptEnabled"})
public static void viewHTML(Context context, String page) {

    WebView myMsg = new WebView(context);
    myMsg.getSettings().setJavaScriptEnabled(true);
    myMsg.loadUrl("file:///android_asset/" + page);
    myMsg.setBackgroundColor(0);

    AlertDialog.Builder builder = new AlertDialog.Builder(context);
    builder.setIcon(R.drawable.ic_launcher).setView(myMsg);
    builder.setTitle("sometitle");
    AlertDialog dialog = builder.create();
    dialog.show();
}
编辑

实际上,我的代码还为AlertDialog使用了一个动画(它从左侧进入)。我可以看到对话框进入屏幕,但是很小,没有任何文本,到达屏幕的中心,然后随着内容变得更大


不知何故,我需要告诉WebView在进入屏幕之前加载其内容

我也遇到了类似的问题,切换到
对话框片段
删除了闪烁。您可以构建一个自定义对话框类,一次创建一个AYSNTask,它首先显示进度条并在后台加载url,一次执行后隐藏进度条并显示WebView。您尝试调用builder.show()了吗?我已经多次使用该生成器,从未见过任何闪烁。我一直使用builder.show()。@user2045570:对不起,我应该澄清一下(现在更新了)。“页面”是资产中的本地html。这不是延迟问题。@Bobbake4:尝试过了,是的,结果是一样的。