加载页面遮挡耗时操作任务页面--第三方开源之AndroidProgressLayout

作者:Z2 时间:2022-08-03 19:44:33 

加载页面遮挡耗时操作任务页面--第三方开源之AndroidProgressLayout

AndroidProgressLayout实现为界面添加圆形进度条。调用setprogress()方法显示和隐藏进度条

在Android的开发中,往往有这种需求,比如一个耗时的操作,联网获取网络图片、内容,数据库耗时读写等等,在此耗时操作过程中,开发者也许不希望用户再进行其他操作(其他操作可能会引起逻辑混乱),而此时需要给用户一个额外的加载页面遮挡住主逻辑代码的运行,待主页面的耗时操作完成后,自动消失这样加载过度页面,恢复出正常应该显示的页面。

举个实际的例子,如代码使用Android WebView打开一个网页链接试图加载某个网站,但网络质量不佳,需要耗时很久,那么在这个过程中,较好的用户体验做法是:给用户一个加载进度页面,遮挡住WebView。当加载的内容成功后在完全切换回正常的逻辑页面。

Android AndroidProgressLayout实现了这样的功能,Android AndroidProgressLayout在github上的项目主页是:https://github.com/antonkrasov/AndroidProgressLayout

测试代码如下:

activity_main.xml:


<com.github.androidprogresslayout.ProgressLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:progressLayout="http://schemas.android.com/apk/res-auto"
android:id="@+id/progressLayout"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<TextView
 android:id="@+id/textView"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:textSize="sp"
 android:layout_centerInParent="true" />
</com.github.androidprogresslayout.ProgressLayout>

MainActivity.java:


package com.zzw.testandroidprogresslayout;
import com.github.androidprogresslayout.ProgressLayout;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.animation.Animation;
import android.widget.TextView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 final ProgressLayout progressLayout = (ProgressLayout) findViewById(R.id.progressLayout);
 final TextView textView = (TextView) findViewById(R.id.textView);
 Handler handler = new Handler() {
 @Override
 public void handleMessage(Message msg) {
  textView.setText("测试完成");
  // 切换回正常显示页面
  progressLayout.showContent();
 }
 };
 // 开始加载... 假设从这里开始一个耗时的操作将开始启动,在此启动过程中,开发者希望用户稍事休息,等待。。。
 progressLayout.showProgress();
 // 假设有一个耗时的加载业务逻辑,需要秒完成。
 handler.sendEmptyMessageDelayed(, );
}
}

以上内容是小编给大家分享的关于加载页面遮挡耗时操作任务页面--第三方开源之AndroidProgressLayout的全部叙述,希望大家喜欢。

标签:androidprogresslayout
0
投稿

猜你喜欢

  • 使用Hibernate根据实体类自动生成表的方法

    2022-12-20 16:54:44
  • Hibernatede 一对多映射配置方法(分享)

    2021-08-27 02:26:32
  • Java实现雪花算法(snowflake)

    2022-10-27 03:43:23
  • Java从服务端下载Excel模板文件的两种方法

    2021-08-29 05:44:40
  • Java字符串的intern方法有何奥妙之处

    2022-07-21 13:38:16
  • Java链表中元素删除的实现方法详解【只删除一个元素情况】

    2023-01-16 11:49:41
  • C#使用NPOI上传excel

    2022-05-20 14:46:22
  • 教你怎么用Java操作Redis

    2023-07-07 22:17:53
  • 安卓逆向半次元app逆向分析源码

    2023-07-28 14:36:05
  • springboot bootcdn使用示例详解

    2022-01-14 21:56:46
  • java使用TimerTask定时器获取指定网络数据

    2022-08-14 10:52:20
  • 浅析C#中结构与类的区别

    2023-09-12 23:41:39
  • HttpWebRequest出错.Section=ResponseHeader Detail=CR

    2022-07-11 22:10:10
  • android中图形图像处理之drawable用法分析

    2023-01-13 07:45:03
  • C#飞行棋小程序设计分析

    2023-06-05 05:27:24
  • C#中的委托和事件详解

    2022-01-20 01:31:53
  • Java二维数组与动态数组ArrayList类详解

    2023-07-31 19:53:56
  • springboot整合mybatis-plus基于注解实现一对一(一对多)查询功能

    2021-06-16 13:08:29
  • Spring Cloud Alibaba使用Nacos作为注册中心和配置中心

    2021-07-15 18:18:42
  • Java使用 try-with-resources 实现自动关闭资源的方法

    2022-01-09 06:54:46
  • asp之家 软件编程 m.aspxhome.com