Coder Social home page Coder Social logo

quickitemdecorationdemo's Introduction

QuickItemDecorationDemo

使用方式

1、在Project的build.gradle中的对应位置添加

allprojects {
  repositories {
    ...
    maven { url 'https://jitpack.io' }
  }
}

2、在项目的依赖中添加

dependencies {
  implementation 'com.github.GeniusLiu:QuickItemDecorationDemo:1.5.0'
}

3、配置全局的分割线

可以在自定义的Application中:

public class App extends Application {

    @Override
    public void onCreate() {
        super.onCreate();

        QuickItemDecoration.setGlobalConfig(
                ItemDecorationConfig.GlobalConfig.getInstance(
                        new ItemDecorationConfig()
                                .create()
                                .setRecyclerMarginTop(500)
                                .setRecyclerMarginBottom(500)
                                .setRecyclerMarginTopColor(Color.RED)
                                .setRecyclerMarginBottomColor(Color.YELLOW)
                                .setMarginBottomWhenNotMatch(false)
                                .setItemDivider(new ItemDivider()
                                        .setColor(Color.BLUE)
                                        .setMarginLeft(150)
                                        .setMarginRight(0)
                                        .setWidth(10))
                                .addIgnoreViewId(R.id.emptyView)
                                .build()));
        QuickItemDecoration.setGlobalConfig(ItemDecorationConfig.GlobalConfig.getInstance(new ItemDecorationConfig().create().build()));
        
    }

}

4、设置全局配置后,只需要将我们的分割线add进recyclerView即可

QuickItemDecoration quickItemDecoration = new QuickItemDecoration();
recyclerView.addItemDecoration(quickItemDecoration);

5、如果想要在某个特殊的RecyclerView列表中更改某个参数的话,可以:

QuickItemDecoration quickItemDecoration = new QuickItemDecoration();
quickItemDecoration.getUpdateConfig().setRecyclerMarginTopColor(Color.BLUE).update();
recyclerView.addItemDecoration(quickItemDecoration);

这种方式只会改变update的参数,不会改变GlobalConfig中其他的参数

6、如果想要在某个特殊的RecyclerView列表中完全使用新的分割线,忽略GlobalConfig:

QuickItemDecoration quickItemDecoration = new QuickItemDecoration();
quickItemDecoration.setConfig(new ItemDecorationConfig().create().setRecyclerMarginTop(100).build());
recyclerView.addItemDecoration(quickItemDecoration);

7、如果您的项目中,空视图、加载视图也占用了item位置,可以忽略给这些视图添加分割线:

QuickItemDecoration quickItemDecoration = new QuickItemDecoration();
quickItemDecoration.getUpdateConfig().addIgnoreViewId(R.id.emptyView).update();
recyclerView.addItemDecoration(quickItemDecoration);

效果: demo

quickitemdecorationdemo's People

Contributors

geniusliu avatar jarvis-lau avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

quickitemdecorationdemo's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.