взгляд переработчика на фрагменты - PullRequest
0 голосов
/ 22 октября 2019

я пытаюсь получить представление рециркулятора в моем фрагменте, но эти ошибки не позволяют мне сделать это, пожалуйста, посмотрите и скажите мне

вот мой фрагмент java класс

public class HomeFragment extends Fragment {

private HomeViewModel homeViewModel;

public View onCreateView(@NonNull LayoutInflater inflater,
                         ViewGroup container, Bundle savedInstanceState) {
    homeViewModel =
            ViewModelProviders.of(this).get(HomeViewModel.class);
    View root = inflater.inflate(R.layout.fragment_home, container, false);

    MyListData[] myListData = new MyListData[] {
            new MyListData("Email", android.R.drawable.ic_dialog_email),
            new MyListData("Info", android.R.drawable.ic_dialog_info),
            new MyListData("Delete", android.R.drawable.ic_delete),
            new MyListData("Dialer", android.R.drawable.ic_dialog_dialer),
            new MyListData("Alert", android.R.drawable.ic_dialog_alert),
            new MyListData("Map", android.R.drawable.ic_dialog_map),
            new MyListData("Email", android.R.drawable.ic_dialog_email),
            new MyListData("Info", android.R.drawable.ic_dialog_info),
            new MyListData("Delete", android.R.drawable.ic_delete),
            new MyListData("Dialer", android.R.drawable.ic_dialog_dialer),
            new MyListData("Alert", android.R.drawable.ic_dialog_alert),
            new MyListData("Map", android.R.drawable.ic_dialog_map),
    };
    RecyclerView recyclerView = root.findViewById(R.id.recyclerView);
    MyListAdapter adapter = new MyListAdapter(myListData);
    recyclerView.setHasFixedSize(true);
    recyclerView.setLayoutManager(new LinearLayoutManager(this));
    recyclerView.setAdapter(adapter);
    return root;
   }
}

iЯ ошибаюсь в этих строках1010 * вот мой xml

<androidx.recyclerview.widget.RecyclerView
                xmlns:android="http://schemas.android.com/apk/res/android"
                xmlns:tools="http://schemas.android.com/tools"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_below="@id/t1"
                android:scrollbars="vertical"
                android:id="@+id/recyclerView"
                />

Ответы [ 2 ]

1 голос
/ 22 октября 2019
You have to use 

recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));

instead of

recyclerView.setLayoutManager(new LinearLayoutManager(this));
0 голосов
/ 22 октября 2019

Попробуйте,

RecyclerView recyclerView = root.findViewById(R.id.recyclerView); 
RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getActivity());
Rcv_Results.setLayoutManager(mLayoutManager);
...