在另一个Activity中关闭进度对话框...Android

4
我有两个活动:
  1. FirstPageActivity
  2. SecondPageActivity
应用程序通过FirstPageActivity调用SecondPageActivity... 并且应用程序在SecondPageActivity中发送HttpRequest
因此,我想在FirstPageActivity中显示进度对话框,并在SecondPageActivity完成数据下载后关闭进度对话框并显示数据。这是否可能?

为什么第二个活动没有显示进度对话框?!! - Mohammad Ersan
实际上,客户不想在第二个活动中显示进度,因为它会一段时间为空,这样不太好:( - user3516596
2个回答

4
我想在FirstPageActivity中显示进度对话框,并在SecondPageActivity完成数据下载后关闭进度并显示。这可能吗?
不可能。您无法从另一个Activity处理一个Activity的UI功能或任何功能。
如果您在FirstPageActivity中启动ProggressDailog,则必须在继续其他Activity之前在onPause()中dismiss它,如您所说的SecondPageActivity。
您可以在SecondPageActivity的onCreate()或onResume()方法中启动新的ProggressDailog。
更新:从ProggressDailog文档中可以看到,要初始化ProggressDialog,需要传递当前Activity上下文。
ProgressDialog(Context context)
ProgressDialog(Context context, int theme)

所以如果我想要这样做,我应该在FirstPageActivity中下载数据,然后将其发送到SecondPageActivity... - user3516596
是的,那将是一个不错的方法。我可以知道“SecondPageActivity”的目的是什么吗?如果说出目的,我可以更具体地帮助您。 - Hamid Shatu
是的,它将显示从HTTP请求下载的数据。实际上,我想在第一个活动中显示进度,因为我不想在空活动上显示进度条,直到它完成下载数据。 - user3516596
你是在FirstPageActivity还是SecondPageActivity中下载数据? - Hamid Shatu
我会再次解释我的问题:我希望进度对话框的后面视图是第一个页面活动,并且当第二个活动准备出现时“也就是数据已经下载完成”,我将关闭进度并显示第二个活动。现在我认为如果我在第二个活动中下载数据,这是不可能的,唯一的解决方案是在第一个活动中下载!这是正确的吗? - user3516596

1
and the App send HttpRequest In the SecondPageActivity.

当你说SecondPageActivity发送HttpRequest时,最好的方法是在SecondPageActivity中显示ProgressDialog

SecondPageActivityonCreate中显示ProgressDialog,并在HttpRequest完成时关闭它。


是的,我同意你的看法,但实际上客户希望在第一个页面活动中显示进度,而不是在第二个活动中显示进度,因为第二个活动一段时间内会是空白的 :( - user3516596
您仍然可以在FirstActivity中显示ProgressDialog,并在启动SecondPageActivity后将其关闭。 - Libin
是的,但第二个活动会有一段时间为空,直到它下载数据,对吧? - user3516596
你说secondActivity是下载数据的那个,所以我相信只有在FirstActivity调用它后它才会开始下载。当你启动这个Activity时,它会立即置于堆栈顶部。 - Libin
我再次解释一下我的问题:我希望进度对话框的后面视图是第一页活动,当第二个活动准备好出现(也就是数据已经下载完成),我将关闭进度并显示第二个活动。现在我认为如果在第二个活动中下载数据,这是不可能的,唯一的解决方案是在第一个活动中下载!是这样吗? - user3516596
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接