package com.kfb.kfbv1; import android.content.ContentProviderClient; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.Button; import android.widget.ImageView; import android.widget.TextView; import android.widget.ToggleButton; import androidx.recyclerview.widget.RecyclerView; import com.kfb.kfbv1.dummy.DummyContent; import com.kfb.kfbv1.media.KfbINtercom; import com.kfb.kfbv1.model.KfbModel; import java.util.List; /** * {@link RecyclerView.Adapter} that can display a {@link DummyItem} and makes a call to the * specified {@link OnListFragmentInteractionListener}. * TODO: Replace the implementation with code for your data type. */ public class MyItemRecyclerViewAdapter extends RecyclerView.Adapter { private final List mValues; private KfbINtercom kfbinter; private final ItemFragment.OnListFragmentInteractionListener mListener; public MyItemRecyclerViewAdapter(List items, ItemFragment.OnListFragmentInteractionListener listener) { mValues = items; mListener = listener; } @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view = LayoutInflater.from(parent.getContext()) .inflate(R.layout.fragment_item, parent, false); return new ViewHolder(view); } @Override public void onBindViewHolder(final ViewHolder holder, int position) { holder.mItem = mValues.get(position); holder.Nazwa.setText(mValues.get(position).Nazwa); holder.Status.setText(mValues.get(position).Status); holder.Error.setText(mValues.get(position).Error); holder.Error.setTextColor(0XFFFF0000); holder.State.setText(mValues.get(position).State); holder.Nok.setText(mValues.get(position).Nok); if(mValues.get(position).Nok!=null) { if (mValues.get(position).Nok.equals("NOK")) { holder.Nok.setTextColor(0XFFFF0000); } else { holder.Nok.setTextColor(0XFF00FF00); } } holder.Mic.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if(holder.Mic.isChecked()) { kfbinter = new KfbINtercom(); if(holder.mItem.id==0) { kfbinter.setTable(KfbModel.getData().getTabletss().getmGate().get(0)); } if(holder.mItem.id==1) { kfbinter.setTable(KfbModel.getData().getTabletss().getmGate().get(1)); } if(holder.mItem.id==2) { kfbinter.setTable(KfbModel.getData().getTabletss().getmGate().get(2)); } if(holder.mItem.id==3) { kfbinter.setTable(KfbModel.getData().getTabletss().getmGate().get(3)); } kfbinter.startStreaming(); } else{ kfbinter.stopStreaming(); } } }); holder.Temperatura.setText(mValues.get(position).Temperatura); String t = mValues.get(position).Temperatura; if(t!=null) { if (Float.parseFloat(t) >= 38.0F) { holder.Temperatura.setTextColor(0XFFFF0000); } else { holder.Temperatura.setTextColor(0XFF00FF00); } } if(mValues.get(position).imgHis!=null) { holder.ImgHis.setImageBitmap(mValues.get(position).imgHis); } holder.mView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (null != mListener) { // Notify the active callbacks interface (the activity, if the // fragment is attached to one) that an item has been selected. mListener.onListFragmentInteraction(holder.mItem); } } }); } @Override public int getItemCount() { return mValues.size(); } public class ViewHolder extends RecyclerView.ViewHolder { public final View mView; public final TextView Nazwa; public final TextView Status; public final TextView Error; public final TextView State; public final TextView Temperatura; public final TextView Nok; public final ImageView ImgHis; public ToggleButton Mic; public DummyContent.DummyItem mItem; public ViewHolder(View view) { super(view); mView = view; Nazwa = (TextView) view.findViewById(R.id.idNazwa); Status = (TextView) view.findViewById(R.id.idStatus); Error = (TextView) view.findViewById(R.id.idError); State = (TextView) view.findViewById(R.id.idState); Temperatura = (TextView) view.findViewById(R.id.idTemperatura); Nok = (TextView) view.findViewById(R.id.idOK); ImgHis = (ImageView) view.findViewById(R.id.imgHis); Mic = (ToggleButton) view.findViewById(R.id.mikrofon); } @Override public String toString() { return super.toString() + " '" + Nazwa.getText() + "'"; } } }