目标:拥有一个ProgressDialog,直到下一个Activity完全加载并显示在屏幕上都显示“Loading...”。
尝试使用设置为源Activity的ProgressDialog上下文和活动。也尝试过使用getApplicationContext()和getParentContext()。最后两种方法会出现异常。需要这样做是因为目标Activity由于非简单布局文件而渲染缓慢。(由于组织问题,现在无法修复。)结果发现目标Activity需要1-2秒才能OnCreate,然后屏幕变黑,需要5秒以上才能绘制。渲染速度很慢。使用Hierarchy Viewer进行了审核,看到很多红球,但现在无法修复。
阅读了一些相关信息,但没有找到解决方法。例如获取Context的各种方法之间有什么区别? 例如,这两个都会崩溃。使用源Activity的“this”也不起作用。
此外,奇怪的是,当我执行以下操作时什么都不会发生: theProgressDialog.show(); ActivityHelper.changeActivity(this, v, InsMyHoldingsActivity.class, extraMap, -1, -1); 用户单击按钮以显示下一个活动,但ProgressDialog与Activity启动冲突,除了按钮在ontouch时变成黄色之外,实际上什么也没有发生。下面的按钮可以正常工作。删除ProgressDialog创建后,它可以正常工作。没有记录任何控制台消息。对开发人员来说有点令人不安。
尝试使用设置为源Activity的ProgressDialog上下文和活动。也尝试过使用getApplicationContext()和getParentContext()。最后两种方法会出现异常。需要这样做是因为目标Activity由于非简单布局文件而渲染缓慢。(由于组织问题,现在无法修复。)结果发现目标Activity需要1-2秒才能OnCreate,然后屏幕变黑,需要5秒以上才能绘制。渲染速度很慢。使用Hierarchy Viewer进行了审核,看到很多红球,但现在无法修复。
阅读了一些相关信息,但没有找到解决方法。例如获取Context的各种方法之间有什么区别? 例如,这两个都会崩溃。使用源Activity的“this”也不起作用。
// Context parentContext = this.getParent().getBaseContext();
Context parentContext = this.getApplicationContext();
ProgressDialogMenuable theProgressDialog = new ProgressDialogMenuable(parentContext,this);
theProgressDialog.setTitle("yeeha");
theProgressDialog.setMessage("weewah");
theProgressDialog.setIndeterminate(true);
theProgressDialog.setCancelable(true);
theProgressDialog.show();
此外,奇怪的是,当我执行以下操作时什么都不会发生: theProgressDialog.show(); ActivityHelper.changeActivity(this, v, InsMyHoldingsActivity.class, extraMap, -1, -1); 用户单击按钮以显示下一个活动,但ProgressDialog与Activity启动冲突,除了按钮在ontouch时变成黄色之外,实际上什么也没有发生。下面的按钮可以正常工作。删除ProgressDialog创建后,它可以正常工作。没有记录任何控制台消息。对开发人员来说有点令人不安。