es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Ningún adaptador adjunto; saltándose el diseño: RecyclerView (con adaptador)

public class ListPetientFragment extends Fragment {

private String URLstring = "http://192.168.43.29:8080/emedical/list.php";
private static ProgressDialog mProgressDialog;
ArrayList<datamodel> dataModelArrayList;
RvAdapter rvAdapter;
RecyclerView recyclerView;

@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    View v = inflater.inflate(R.layout.fragment_list,container,false);
    recyclerView = (RecyclerView) v.findViewById(R.id.recycler);
    fetchingJSON();
    return v;
}

private void fetchingJSON() {

    StringRequest stringRequest = new StringRequest(Request.Method.GET, URLstring,
            new Response.Listener<string>() {
                @Override
                public void onResponse(String response) {

                    Log.d("strrrrr", ">>" + response);

                    try {
                        JSONObject obj = new JSONObject(response);
                        if(obj.optString("selected").equals("selected")){

                            dataModelArrayList = new ArrayList<>();
                            JSONArray dataArray  = obj.getJSONArray("code1");

                            for (int i = 0; i < dataArray.length(); i++) {

                                DataModel playerModel = new DataModel();
                                JSONObject dataobj = dataArray.getJSONObject(i);

                                playerModel.setNames(dataobj.getString("names"));
                                playerModel.setPhone(dataobj.getString("phoneNumber"));
                                playerModel.setDisease(dataobj.getString("disease"));
                                dataModelArrayList.add(playerModel);
                            }
                            setupRecycler();
                        }

                    } catch (JSONException e) {
                        e.printStackTrace();
                    }
                }
            },
            new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {
                    //displaying the error in toast if occurrs
                    Toast.makeText(getActivity(), error.getMessage(), Toast.LENGTH_SHORT).show();
                }
            });

    // request queue
    RequestQueue requestQueue = Volley.newRequestQueue(getActivity());

    requestQueue.add(stringRequest);

}
private void setupRecycler(){
    rvAdapter = new RvAdapter(getContext(),dataModelArrayList);
    rvAdapter.notifyDataSetChanged();
    recyclerView.setAdapter(rvAdapter);
    recyclerView.setLayoutManager(new LinearLayoutManager(getContext(), LinearLayoutManager.VERTICAL, false));

}

}

Error es:
2021-11-17 18:41:02.417 29997-29997/? E/rtphonemedicat: Unknown bits set in runtime_flags: 0x8000
2021-11-17 18:41:03.628 29997-30029/com.nigoote.smartphonemedicate E/GED: Failed to get GED Log Buf, err(0)
2021-11-17 18:41:03.698 29997-30029/com.nigoote.smartphonemedicate E/ion: ioctl c0044901 failed with code -1: Invalid argument
2021-11-17 18:41:13.899 29997-29997/com.nigoote.smartphonemedicate E/RecyclerView: No adapter attached; skipping layout

¡Gracias de antemano!

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Parece que estás obteniendo un error relacionado con el RecyclerView. Parece que no has adjuntado un adaptador al RecyclerView, por lo que está saltando el diseño. Asegúrate de haber adjuntado un adaptador al RecyclerView antes de intentar establecer el diseño.

Comments are closed.