是否推荐使用 ProgressDialog 登录?
Is using ProgressDialog recommended for login?
我有一个登录 activity,一旦按下登录按钮,http 请求就会发送到 api 以验证凭据。
我面临的问题是按钮可以被多次按下,并且从这个任务中获得响应有时需要一段时间。
我的解决方案是添加 ProgressDialog 来阻止 UI。但是,我发现 ProgressDialog 已被弃用。我做了一些研究,似乎它被弃用的原因正是因为 UI 的阻塞在大多数情况下都不是最佳选择。
所以请问,登录场景推荐使用ProgressDialog吗?如果不是,当从 API 获得响应可能需要比预期更长的时间时,处理登录 activity 的最佳方法是什么?
您可以创建具有 disabled/enabled 状态的自定义 "Button"。当用户单击按钮时使用禁用按钮,清除文本并显示进度条。
我认为这是一种更优雅的显示加载进度的方式。
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal">
<ProgressBar
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/progressBar"
android:layout_centerInParent="true"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Connect"
/>
</RelativeLayout>
我有一个登录 activity,一旦按下登录按钮,http 请求就会发送到 api 以验证凭据。
我面临的问题是按钮可以被多次按下,并且从这个任务中获得响应有时需要一段时间。
我的解决方案是添加 ProgressDialog 来阻止 UI。但是,我发现 ProgressDialog 已被弃用。我做了一些研究,似乎它被弃用的原因正是因为 UI 的阻塞在大多数情况下都不是最佳选择。
所以请问,登录场景推荐使用ProgressDialog吗?如果不是,当从 API 获得响应可能需要比预期更长的时间时,处理登录 activity 的最佳方法是什么?
您可以创建具有 disabled/enabled 状态的自定义 "Button"。当用户单击按钮时使用禁用按钮,清除文本并显示进度条。
我认为这是一种更优雅的显示加载进度的方式。
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal">
<ProgressBar
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/progressBar"
android:layout_centerInParent="true"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Connect"
/>
</RelativeLayout>