Должен ли я использовать RecyclerView.VERTICAL вместо LinearLayoutManager.VERTICAL? - PullRequest
0 голосов
/ 10 декабря 2018

Запуск ./gradlew lint сообщает мне об ошибке, которая сбивает с толку:

39: должен быть одним из: RecyclerView.HORIZONTAL, RecyclerView.VERTICAL

ВИсходный код:

    38 LinearLayoutManager linearLayoutManager = new LinearLayoutManager(rootView.getContext());
    39 linearLayoutManager.setOrientation(LinearLayoutManager.VERTICAL);
    40 recyclerView.setLayoutManager(linearLayoutManager);
    41 recyclerView.setAdapter(recyclerAdapter);

Есть ли причина, по которой я должен изменить 39-ю строку на

linearLayoutManager.setOrientation(RecyclerView.VERTICAL);

Ответы [ 3 ]

0 голосов
/ 10 декабря 2018

Вы должны использовать это для вертикального просмотра переработчика в Android

LinearLayoutManager layoutManager = new LinearlayoutManager(this);
recyclerView.setLayoutManager(layoutManager);
0 голосов
/ 10 декабря 2018

Нет никакой разницы в использовании LinearLayoutManager.VERTICAL или RecyclerView.VERTICAL, потому что в LinearLayoutManager они одинаковы.

public class LinearLayoutManager extends RecyclerView.LayoutManager implements
    ItemTouchHelper.ViewDropHandler, RecyclerView.SmoothScroller.ScrollVectorProvider {

private static final String TAG = "LinearLayoutManager";

static final boolean DEBUG = false;

public static final int HORIZONTAL = RecyclerView.HORIZONTAL;

public static final int VERTICAL = RecyclerView.VERTICAL;

Как вы можете видеть в этом фрагменте кода из LinearLayoutManager.

0 голосов
/ 10 декабря 2018

Вы можете предоставить LayoutManager из самого макета XML:

<android.support.v7.widget.RecyclerView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    app:layoutManager="android.support.v7.widget.LinearLayoutManager" />

В качестве альтернативы, вы можете сделать это из кода Java:

LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getContext(), RecyclerView.VERTICAL, false);
...