daimajia / AndroidSwipeLayout

The Most Powerful Swipe Layout!
MIT License
12.37k stars 2.67k forks source link

notifyDataSetChanged 之后自动关闭的问题 #567

Open qq870841070 opened 2 years ago

qq870841070 commented 2 years ago

调用 notifyDataSetChanged 布局会自动关闭,翻了好久没找到解决办法,后来我重写了OnLayout方法,临时解决一下 @Override protected void onLayout(boolean changed, int l, int t, int r, int b) { if (isDisableLayout){

        return;
    }
    super.onLayout(changed, l, t, r, b);
    LogUtils.debug("更新布局");
}

//使用notifyDataSetChanged 前,先禁用OnLayout事件
public void setDisableLayout(boolean _disable){
    this.isDisableLayout = _disable;
}

使用notifyDataSetChanged之后,在调用listView的layout方法,不知道为什么要加个随机数,否则两次调用layout参数都一致的话也不会更新 listView.layout(0,0,1000+ RandomUtils.getRandom(1,100),2000);

Dieselkaka commented 2 years ago

谢谢,已收到

HeroGentry commented 2 years ago

想创业,开网店,低投资,高收入,叫你月月赚翻,美滋滋。本店诚招代理商,包教包会。QQ:2020633271旺旺:梦凌love13

uidq1290 commented 2 years ago

已收到

qq870841070 commented 2 years ago
    int left = listView.getLeft();
    int right = listView.getRight();
    int top = listView.getTop();
    int bottom = listView.getBottom();
    Date dt = new Date();
    int sec = dt.getSeconds();
    listView.layout(0,0,right,bottom+sec);