Stack Exchange
LinearLayoutManager cannot resolve getOrientation()
I have a RecyclerView implemented in a fragment and I'm trying to add dividers to the code.  I have the RecylcerView working as intended, but the LinearLayoutManager cannot resolve the getOrientation() function.
private RecyclerView mRecyclerView;
private RecyclerView.Adapter mAdapter;
private RecyclerView.LayoutManager mLayoutManager;

@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
    View root = (View) inflater.inflate(R.layout.fragment_settings, null);
    getActivity().setTitle("Settings");

    mRecyclerView = (RecyclerView) root.findViewById(R.id.recycler_view_settings);

    mRecyclerView.setHasFixedSize(true);

    mLayoutManager = new LinearLayoutManager(getContext());
    mRecyclerView.setLayoutManager(mLayoutManager);
    mAdapter = new SettingsAdapter(getResources().getStringArray(R.array.setting_list));
    mRecyclerView.setAdapter(mAdapter);
    DividerItemDecoration dividerItemDecoration = new DividerItemDecoration(mRecyclerView.getContext(), mLayoutManager.getOrientation());
    mRecyclerView.addItemDecoration(dividerItemDecoration);
    return root;
}


I was under the assumption that because I was able to initialize mLayoutManager as a LinearLayoutManager that I would be able to use its functions.  Changing RecyclerView.LayoutManager mLayoutManager to LinearLayoutManager mLayoutManager resolved the issue.

LayoutManager does not declare a getOrientation() method, LinearLayoutManager does.

Change
private RecyclerView.LayoutManager mLayoutManager;

to
private LinearLayoutManager mLayoutManager;


I got the same issue when I create a divider.
You can simply put the orientation yourself, LinearLayoutManager.VERTICAL or LinearLayoutManager.HORIZONTAL, according to the orientation your RecyclerView. It works for me.

You can use code below at CardView at XML file 
Not at recyclerView.
android:layout_marginTop="8dp

Maybe the layoutmanager is a LinearLayoutManager. It depends on if LinearLayout is used in the fragment. You can safe cast to LinearLayoutManager and check the orientation. If the safe cast fails you need to supply LinearLayoutManager.VERTICAL or LinearLayoutManager.HORIZONTAL using other logic.
