使用createChooser的startActivityForResult会使选择器窗口不断闪烁

时间:2015-10-21 20:41:24

标签: android android-activity

我有以下代码来创建文件选择器:

    public void openFileChooser(ValueCallback<Uri> uploadFile, String acceptType) {
        _uploadFile = uploadFile;
        Intent i = new Intent(Intent.ACTION_GET_CONTENT);
        i.addCategory(Intent.CATEGORY_OPENABLE);
        if (acceptType != null && acceptType.length() > 0) {
            i.setType(acceptType);
        }
        startActivityForResult(Intent.createChooser(i, "File Chooser"), Action.FileChooser.ordinal());
    }

这在大多数设备上都可以正常工作。在某些设备上,当调用startActivityForResult时,选择器窗口会弹出,但在我的应用程序前闪烁。这很难描述,但它就像它在我的应用程序前面非常短暂地出现,然后落后大约一秒钟,然后它会再次出现。它一遍又一遍地执行此操作,直到您终止该活动。它在这种状态下完全无法使用,因为你无法长时间看到它。

目前我可以在我的Android 4.2.2手机上可靠地复制这个,但我们也在其他操作系统版本上看到了它。

关于如何使这项工作的任何建议都会很棒。

0 个答案:

没有答案