近期的安卓应用快完工了。可是个别界面有瑕疵,怎么改动都解决不了。挥之不去的阴影。问题例如以下:

在界面上,数据已经载入完成了。可还是有一股圆形的进度条,感觉它老是在载入什么东西,严重影响界面美观:

1. 布局用的是LinearLayout

2.界面布局用的是RelativeLayout

各种方法都试过了,当然都是基于布局文件的改动,什么fill_parent啦,alignBotton啦,换不同的layout啦,各种属性试了个遍,都不行。为了这个布局问题整整折腾了三天。

反正。在布局文件上再怎么折腾可能都没戏了。

静下心来想想。问题会不会出在其它地方。而不是布局文件?

回忆起刚学Android那几天,照着书上的样例写,当中有提到ListView的部分。也提到了圆形的进度条。于是翻开书本,找到那个章节,忽然就柳暗花明了!

注意看照片中划线的文字:“当ListView没有内容能够显示时... ... 显示一个圆形进度条”。好吧,难道是问题出在应用的ListView?

那就来看看这个界面中的ListView是怎么回事:

<?

xml version="1.0" encoding="utf-8"?> 

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:id="@+id/fragmentContainer"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" > <LinearLayout>
<--表头,忽略-->
</LinearLayout> <ListView
android:id="@+id/list_uploadinfo_1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:dividerHeight="1px"
android:divider="#B8B8B8" >
</ListView> <Button android:text="各网站上传数量图"/> <LinearLayout>
<--表头,忽略-->
</LinearLayout> <ListView
android:id="@+id/list_uploadinfo_2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:dividerHeight="1px" android:divider="#B8B8B8" >
</ListView> <Button android:text="每月上传数趋势图表"/> </LinearLayout>
</ScrollView>


结构上,有两个ListView,但他们都已经用数据填满了。不存在没有内容的问题。

那难道还有其它的ListView? 答案还真就是有其它的ListView,并且,是那个最大的ListView,却被我忽略了:

public class UploadInfoFragment extends ListFragment { //注意。是继承了ListFragment
private HashMap<String, Integer> monthQuantityMap;
private HashMap<String, Integer> stationQuantityMap;
...}

就是控制这个界面的Fragment。它继承了ListFragment,也就须要自己的ListView来展示内容。可是仅仅有刚才的两个内部ListView填充了内容,外面这个大的没有,所以才会有这个挥之不去的圆形进度条。!!

那怎么办?非常easy,既然并不须要往这个最大的ListView中填充数据,那何必要用ListFragment 呢?全然能够用普通的Fragment嘛。

事实上,之所以这里用的是ListFragment,全然是由于在做这个功能的时候,大部分代码都是从其它功能搬过来的,所以把ListFragment也搬了过来。

然后进行改动,让这个类继承普通的 Fragment 就可以:

public class UploadInfoFragment extends Fragment { //注意,用普通的Fragment就可以
private HashMap<String, Integer> monthQuantityMap;
private HashMap<String, Integer> stationQuantityMap;
...}

最终把讨厌的圆形进度条赶走了,问题解决!

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemhvdXlpbmdnZTExMDQ=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

总结:有些常见的问题,网上随便一查就有,但这些藏的比較深的问题,一般非常难在网上直接查到。这个时候假设能细致地取翻一翻书本,也许会有惊喜的发现~

另外,平时在看书的时候还是认真一点为好,这样,有些细节就能印在脑子里。说不定什么时候就派上用场了~

!!!!!安卓界面总是显示载入进度条的问题,没事别乱用ListFragment的更多相关文章

  1. Unity发布WebGL时如何修改默认的载入进度条

    Unity发布WebGL版本后,需要去除Unity的Logo,首先关闭Splash Image去除Made with Unity启动画面(在File->Build Settings->Pl ...

  2. 【jQuery】页面顶部显示的进度条效果

    <!Doctype html> <html> <head> <title>页面顶部显示的进度条效果</title> <meta htt ...

  3. python实现显示安装进度条

    一直很好奇那种安装进度条,或者启动程序时候显示的进度条是怎么实现的,学习了python之后,sys模块中有个方法可以实现,代码如下:   1 2 3 4 5 6     import sys,time ...

  4. 怎样控制界面控件之进度条(ProgressBar)功能

    一.基础知识: 1.ProgressBar在界面文件XML中的布局: [html] <progressBar android:id="@+id/progressbar_updown&q ...

  5. HTML5 CSS3 诱人的实例 : 网页载入进度条的实现,下载进度条等

    今天给大家带来一个比較炫的进度条,进度条在一耗时操作上给用户一个比較好的体验,不会让用户认为在盲目等待,对于没有进度条的长时间等待,用户会任务死机了,毫不犹豫的关掉应用:一般用于下载任务,删除大量任务 ...

  6. thinkpad 睡眠唤醒后热键功能正常,但屏幕无法显示状态/进度条/图标

    由于博主比较习惯笔记本开盖即用,合盖即走,不大习惯开机关机(毕竟SSD速度杠杠滴^_^).可是发现笔记本长时间睡眠乃至休眠唤醒后,使用thinkpad热键,虽然可以调节,但屏幕不显示调节状态了.解决步 ...

  7. linux下命令行工具gcp显示拷贝进度条

    1.环境: ubuntu16.04 Linux jello 4.4.0-89-generic #112-Ubuntu SMP Mon Jul 31 19:38:41 UTC 2017 x86_64 x ...

  8. 网页载入进度条中的javascript

    demo地址:http://output.jsbin.com/buquyedosa 思路例如以下:代码都有凝视,就不一一介绍了. <!DOCTYPE html> <html> ...

  9. 拼接html不显示layui进度条解决方法

    最新有个新需求,要异步拼接html并渲染数据,并且我这边是用layui的flow.load(流加载)渲染多个进度条.按官网给出的 element.progress('demo', n+'%'); 就是 ...

随机推荐

  1. ListView优化问题

    可以参考:http://blog.csdn.net/bill_ming/article/details/8817172和http://blog.csdn.net/xiangjai/article/de ...

  2. SD-关于定价日期的设置

    最近看了一篇关于定价日期的文章,我觉得写得很不错,特将自己的理解摘抄如下: 关于SD的定价日期在SAP系统中有三个配置与其相关,以及手工输入定价日期,具体如下: 1.订单类型的“定价日期建议“ 这个字 ...

  3. Jsp分页实例---假分页

    今天总结一个JSP假分页的实例,由基本功能由js实现. 相较前一篇真分页中程序的功能,丰富了一些.具备首页尾页,和页面跳转功能. 首先还是来总结一下真假分页的优缺点和特性吧. 假分页:从数据库中取出所 ...

  4. admin嵌套在spring mvc项目里,菜单栏点击新连接每次都会重置

    <ul class="treeview-menu" id="ul_schedule"> <li><a href="#&q ...

  5. c 中关于int,unsigned int , short 各种类型总结

    int类型比较特殊,具体的字节数同机器字长和编译器有关.如果要保证移植性,尽量用__int16 __int32 __int64吧__int16.__int32这种数据类型在所有平台下都分配相同的字节. ...

  6. 【iOS发展-53】实例探究:scrollView使用方法和解决方案无法滚动核心

    案例效果: (1)基本的就是练习scrollView的使用方法.界面里面的其它元素基本都是UIView和UIButton堆砌起来的. (2)主要用代码实现.当然,能够先用storyboard拖个scr ...

  7. 基于visual Studio2013解决面试题之1307二分查找

     题目

  8. c++ split模板实现

    模板实现,重载+6: template<typename _Elem, typename _Fty> inline void split(const _Elem* s, const _El ...

  9. How to find variable is empty in shell script

    (1). var="" if [ -n "$var" ]; then     echo "not empty" else     echo ...

  10. HTML+CSS - 前端设计的小技巧(持续更新......)

    2015年7月6日20:28:20 1.设置文字的居中,非控件内的. :text-alain:center 2.图片在ASP.NET中,可以直接拖放到界面,自动形成img控件. 3.CSS直接在全局样 ...