web-dev-qa-db-ja.com

LinearLayoutManager.VERTICALの代わりにRecyclerView.VERTICALを使用する必要がありますか?

./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);
8
John

LinearLayoutManagerでも同じなので、LinearLayoutManager.VERTICALまたはRecyclerView.VERTICALを使用しても違いはありません。

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からわかるように。

9

XMLレイアウト自体からLayoutManagerを提供できます。

<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);
1
Chintan Soni

これをAndroidの垂直リサイクラービューに使用する必要があります

LinearLayoutManager layoutManager = new LinearlayoutManager(this);
recyclerView.setLayoutManager(layoutManager);
1
Tejas Shukla