/**
* 数据绑定,分页显示
*/
private void updataMenu(final EditText search)
{
if(listwz==null)
{
return;
} pageID =0;
listwz.setAdapter(null);
FilterArray = new JSONArray();
FilterArray = usedatabase.WzArray(search.getText().toString(), pageID,WzLbID);
// pageID = 1; //Bug 少查10条数据,但不影响速查
wzadapter = new WzAdapter(context, FilterArray,search);
listwz.setAdapter(wzadapter);
listwz.setOnScrollListener(new OnScrollListener() {
int lastitem = 0;
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
// TODO Auto-generated method stub
if(scrollState == OnScrollListener.SCROLL_STATE_IDLE && listwz.getCount()-lastitem<1)
{
if(WzLbID.equals(""))
{
pageID +=1;
//把原来的加到一个新的Array里面
NewArray = new JSONArray();
NewArray = usedatabase.WzArray(search.getText().toString(), pageID,WzLbID);
try {
for(int i=0;i<NewArray.length();i++)
{
JSONObject item = (JSONObject)NewArray.get(i);
FilterArray.put(item);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
int currentPostition = listwz.getFirstVisiblePosition();
WzAdapter adapter = new WzAdapter(context, FilterArray,search);
listwz.setAdapter(adapter);
listwz.setSelectionFromTop(currentPostition+1, 0);
}
else
{
if(usedatabase.WzArray(search.getText().toString(), pageID,WzLbID).length()>FilterArray.length())
{
pageID +=1;
//把原来的加到一个新的Array里面
NewArray = new JSONArray();
NewArray = usedatabase.WzArray(search.getText().toString(), pageID,WzLbID);
try {
for(int i=0;i<NewArray.length();i++)
{
JSONObject item = (JSONObject)NewArray.get(i);
FilterArray.put(item);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
int currentPostition = listwz.getFirstVisiblePosition();
WzAdapter adapter = new WzAdapter(context, FilterArray,search);
listwz.setAdapter(adapter);
listwz.setSelectionFromTop(currentPostition+1, 0);
}
}
}
} @Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
// TODO Auto-generated method stub
lastitem = visibleItemCount+firstVisibleItem; }
});
}

在按类别分页查询时候,默认为从10-0开始,查过一次后加了1,然后会照成10-10这10条数据查不出来,在大数据时候这10条数据很难发现,今天一个测试库只有26条数据,总是就加载16条数据,百思不得其解,检查代码才发现,真是粗心。

一个因为粗心的Bug的更多相关文章

  1. ASP.NET MVC的Ajax.ActionLink 的HttpMethod="Get" 一个重复请求的BUG

    这段时间使用BootStrap+Asp.net Mvc5开发项目,Ajax.ActionLink遇到一个重复提交的BUG,代码如下: @model IList<WFModel.WF_Temp&g ...

  2. 最近提交一个mysql5.7的bug,提醒自己以后注意写SQL要规范

    最近帮朋友提交一个mysql5.7的bug , oracle mysql 的大神还回复我 , 以后注意书写sql规范 , 潜台词是不是不要给他们增加工作量 https://bugs.mysql.com ...

  3. 移动端一个奇怪的触摸bug

    这两天遇到一个很奇怪的bug,在移动端,一个页面里所有的input框都不能点击,我查了一下,里面的没有设置readonly属性,只要页面滚动一下就可以用了,而且,只要我在真机测试的时候,f12开发者模 ...

  4. 一个粗心的Bug,JSON格式不规范导致AJAX错误

    一.事件回放  今天工作时碰到了一个奇怪的问题,这个问题很早很早以前也碰到过,不过没想到过这么久了竟然又栽在这里. 当时正在联调一个项目,由于后端没有提供数据接口,于是我直接本地建立了一个 json ...

  5. STL 库中的陷阱----一个难以察觉的 bug

    请找出下面程序的 bug? int maxProfit2(vector<int> &prices) { int local[3] = {0}; int global[3] = {0 ...

  6. 表与表的关系把RD搞乱了,记一个Procedure中的bug

    就是6张表的关联查询,写了一个存储过程,使用4层for来处理 bug:最后一个for中,两张表的关联条件少了一个,结果数据多查了. 排查办法:使用dbms_output.printline('');每 ...

  7. 记一个CRenderTarget中的BUG及解决办法

    转载请注明出处:http://www.cnblogs.com/Ray1024 一.问题描述 在MFC中使用Direct2D有现成的方法,在Visual Studio 2010 SP1及以上环境中MFC ...

  8. 一个毕生难忘的BUG

    记得以前接手过一个Java项目,服务器程序,直接让Jar在linux上跑的那种, 这个项目由两个web服务组成,也就是两条Java进程,主进程 xxx.jar,辅助进程 xxx_helper.jar. ...

  9. 一个比较难忘的BUG

    本学期开设了软件测试课程,在课上有讨论到bug,想到bug,真是很令人头疼的东西,相信每个程序都多多少少会有几个头疼的bug. 初学java时写过一个字符串判断的循环,之前学的C++字符类型用“==” ...

随机推荐

  1. 关于在Xcode的OC工程中相对路径失败的原因

    Xcode的工程生成的可执行文件不是默认在源文件同一个目录下面的,所以当可执行文件执行的时候,相对路径就不对了. 这一点用终端直接编译执行文件证明了这一点: clang -fobjc-arc -fra ...

  2. Linux与Windows共享文件夹之samba的安装与使用(Ubuntu为例)

    1.写在前面     当你在Windows上安装了一台Linux的虚拟机,你想访问Linux中的文件夹,将虚拟机中的文件复制到Windows主机上,你会怎么做呢?如果这台Linux主机不是虚拟机,而是 ...

  3. 不用synchronized块的话如何实现一个原子的i++?

    上周被问到这个问题,没想出来,后来提示说concurrent包里的原子类.回来学习一下. 一.何谓Atomic? Atomic一词跟原子有点关系,后者曾被人认为是最小物质的单位.计算机中的Atomic ...

  4. 常用的Linux可插拔认证模块(PAM)应用举例(一)

    pam_access.so模块 pam_access.so模块主要的功能和作用是根据主机名(包括普通主机名或者FQDN).IP地址和用户实现全面的访问控制.pam_access.so模块的具体工作行为 ...

  5. 两台SQL Server数据同步解决方案

    复制的概念 复制是将一组数据从一个数据源拷贝到多个数据源的技术,是将一份数据发布到多个存储站点上的有效方式.使用复制技术,用户可以将一份数据发布到多台服务器上,从而使不同的服务器用户都可以在权限的许可 ...

  6. [转载]iTOP-4412开发板搭建最小linux系统

    本文转迅为电子论坛:http://www.topeetboard.com 最小linux系统所需资料下载:http://pan.baidu.com/s/1kTNan0j 开发板不仅可以运行Androi ...

  7. [转]Worksheet.Change Event (Excel)

    本文转自:https://msdn.microsoft.com/en-us/library/office/ff839775.aspx#AboutContributor Example   The fo ...

  8. [转]Cordova + Ionic in Visual Studio - 101 Tutorial [Part I]

    本文转自:http://binarylies.ghost.io/cordova-ionic-in-visual-studio/ Hi everyone, I thought about lending ...

  9. 怎么学习计算电磁学【QUORA】

    链接 There are several resources. But it depends on what you actually want to learn...Let me explain: ...

  10. UESTC 900 方老师炸弹 --Tarjan求割点及删点后连通分量数

    Tarjan算法. 1.若u为根,且度大于1,则为割点 2.若u不为根,如果low[v]>=dfn[u],则u为割点(出现重边时可能导致等号,要判重边) 3.若low[v]>dfn[u], ...