Como recuar o divisor em um RecyclerView de layout linear (por exemplo, adicione preenchimento, margem ou inserção apenas à ItemDecoration)

Segueesta resposta Consegui obter um divisor entre os itens de um RecyclerView vertical. No entanto, eu também queria recuar ligeiramente as linhas divisórias.

Consegui fazer isso codificando em um valor INDENT noRecyclerView.ItemDecoration subclasse.

int INDENT = 20;

@Override
public void onDraw(Canvas c, RecyclerView parent, RecyclerView.State state) { 

    int left = parent.getPaddingLeft() + INDENT;
    int right = parent.getWidth() - parent.getPaddingRight() - INDENT;

    // ...

        divider.setBounds(left, top, right, bottom);

    // ...
} 

No entanto, então eu teria que também mexer com pixels independentes de densidade.

Finalmente encontrei uma solução semelhante acomo foi feito com o ListView então estou compartilhando isso como resposta abaixo.

questionAnswers(1)

yourAnswerToTheQuestion