./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);
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
からわかるように。
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);
これをAndroidの垂直リサイクラービューに使用する必要があります
LinearLayoutManager layoutManager = new LinearlayoutManager(this);
recyclerView.setLayoutManager(layoutManager);