在Android中显示“请稍候”消息的最佳做法/指南是什么?

时间:2016-06-10 14:05:22

标签: android xamarin.android

我有一个应用程序,其中用户的操作有时会导致应用程序在显示之前从服务器获取数据,例如获取项目的详细信息(信息太大而无法为所有项目预加载)或刷新所有数据。

在此过程中,我不希望用户做任何其他事情。显示“请稍候”消息的准则是什么?理想情况下,用户应该可以取消请求。

我可以通过一个警告对话框来完成它,但是操作通常只需要半秒到一秒钟,而且对于一个警告对话框暂时弹出来看起来真的很奇怪,甚至可能还不够长能够阅读信息。

我看到的另一个选择是小吃店,但它不会阻止用户做任何其他事情或导航。

在这种情况下,是否有指南或最佳做法?

我正在使用Xamarin.Android,但我认为不重要。

2 个答案:

答案 0 :(得分:0)

查看AsyncTask上的documentation

我会在AsyncTask中执行长时间运行的任务,在其ProgressDialog方法中显示onPreExecute并在onPostExecute之后将其隐藏起来。

要阻止用户关闭对话框,您可以使用Dialog.setCancelable()方法。

您可以为Dialog定义自定义布局,并通过setContentView()方法进行设置。

答案 1 :(得分:0)

您可以显示加载圈,其中加载的内容将显示为this。完成后,将内容替换为加载圈。

实际上“我不希望用户做任何其他事情”在大多数Android设计模式中是不可接受的。 Android应用应该允许用户控制应用。

关于取消请求,您可以在加载圆圈附近添加取消按钮,或在圆圈内添加一个十字形,这将在按下时停止该过程。后者是首选。

有关更多模式,请参阅this

关于进度对话框

据我所知,在新的Android中不鼓励阻止用户交互的进度对话框。但很抱歉我找不到参考资料,可能在材料设计指南文档中的某处。但是,因为您是开发人员,所以取决于您:D。