zhanghuayan 发布的文章

挖一个坑——TabLayout


在使用TabLayout的时候,在Fagment中使用,会发现,TabLayout中的字体不显示,但是在按下home键退出到桌面后,再进入,TabLayout就出现了,如此诡异。先挖个坑,做完毕设再解决。


在使用PagerAdapter时的坑


坑的源头

在fragment中使用

public void onStart() {
        super.onStart();
        mAdapter = new TrackGetFragmentPagerAdapter(getChildFragmentManager());
        tabLayout = (TabLayout) mainView.findViewById(R.id.tabs);
        viewPager = (ViewPager) mainView.findViewById(R.id.vp_view);
        viewPager.setAdapter(mAdapter);
        tabLayout.setupWithViewPager(viewPager);
        tabLayout.setTabMode(TabLayout.MODE_FIXED);
        mAdapter.notifyDataSetChanged();
    }


MaterialDesignLibrary 开源库的坑


坑的起源

按github中介绍中的配置

repositories { jcenter() } dependencies { compile 'com.github.navasmdc:MaterialDesign:1.5@aar' }

编译后

“Attribute ”rippleColor“ has already been defined” 。检查了一下自己的color.xml。并没有定义这个属性,那么应该就是第三方库里使用了这个属性。


SwipeRefreshLayout 载入时自动刷新


swipeRefreshLayout = (SwipeRefreshLayout) mView.findViewById(R.id.refresh_layout);
onRefreshListener = new SwipeRefreshLayout.OnRefreshListener() {
            @Override
            public void onRefresh() {
                loadPage = 0;
                mAdapter.cleanData();
                mAdapter.notifyDataSetChanged();
                Log.v("LishSearch", "开始加载数据");
            }
        };
        swipeRefreshLayout.setOnRefreshListener(onRefreshListener);
//显示加载
        swipeRefreshLayout.post(new Runnable(){
            @Override
            public void run() {
                swipeRefreshLayout.setRefreshing(true);
            }});
        onRefreshListener.onRefresh();