fragment切换 hide和show之后重新刷新数据的方法

刚开始做fragment切换就是直接调用fragment的replace方法

但是,这个方法每次都是重新创建的视图(fragment对象没有重建),这样有很多弊端,比如要求每次切换回来后重新请求数据的话,实现起来就比较费劲了

后来就在方法里面找,终于发现一个方法

每个fragment都有一个hide()和show()的方法,这样就不用每次重建fragment了,你可以选中是否重新刷新数据,很方便,下面放出这个方法

/**
     * 当界面重新展示时(fragment.show),调用onrequest刷新界面
     */
    @Override
    public void onHiddenChanged(boolean hidden) {
        // TODO Auto-generated method stub
        super.onHiddenChanged(hidden);
        breed_name = null;
        quality_name = null;
        orgin_name = null;
        searchTxt = null;
        allPage = 1;
        tv_allpurchase_public_time.setTextColor(0xff1f92c8);
        tv_allpurchase_public_price.setTextColor(0xff333333);
        if (!hidden) {
            firstRefresh();
        }
    }

这个方法在每次切换回来后会重新调用一下,可以在这里写重新请求的方法,参数 hidden 为true的和false来分别时候是重新回来这个fragment,根据这个boolean

来判断是不是应该重新请求数据

发布了25 篇原创文章 · 获赞 24 · 访问量 3万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章