android - 开发中进度条的选择

查看:134
本文介绍了android - 开发中进度条的选择的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

使用Progress控件很方便,但是如果有居中需求的话,某些场景会增加一层布局嵌套
而且每个布局都要书写,很麻烦

而使用ProgressDialog 书写起来很方便,但是某些场景不能很直接的提供正确的上下文.(容器不是activityfragment 时)

各位大哥在实际开发中如何实现进度条的需求的?

//我尝试这样操作的情况,下 在app第一次进入的时候,我点击按钮向容器上添加progressbar的时候,这个progressbar是不会旋转的,卡在界面上
//而关闭这个activity后(app中还有activity存在),再次进入activity 继续添加,这时候progressbar就会旋转了,这是为什么呢?
ProgressBar progressBar = new ProgressBar(this);
ViewGroup decorView = (ViewGroup) getWindow().getDecorView();
FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT, Gravity.CENTER);
progressBar.setLayoutParams(layoutParams);
decorView.addView(progressBar);

解决方案

这个我也提不出什么有建设性的意见,有时候为求省事,我会写一个ProgressBar的xml界面,使用时inflate并直接将其插入到rootView当中,愿意的话在BaseActivity中把这个逻辑再封装一层,这样的话基本能满足一些简单的需求。
再复杂一些的话就是让progressBar与用户的操作互动起来,比如说某个编辑界面有图片上传的入口,用户在选择图片后等待上传的这段时间我们就可以将提交键修改为Progress Widget,既阻止了用户的操作还能有效提示进度。
至于ProgressDialog,我觉得它阻塞性太强了,除了在某些强逻辑顺序的场景,例如必须加载某些文件才能进行下步操作的情况下,否则一般不推荐用这个。

这篇关于android - 开发中进度条的选择的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆