package de.denisulmer.luminous.v2;
import android.app.Activity;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;
import android.widget.ToggleButton;
import java.util.List;
public class DeviceListAdapter extends ArrayAdapter<Device> {
private List<Device> mItems;
private int mLayoutResourceId;
private Context mContext;
public DeviceListAdapter(Context context, int layoutResourceId, List<Device> items) {
super(context, layoutResourceId, items);
this.mLayoutResourceId = layoutResourceId;
this.mContext = context;
this.mItems = items;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View row = convertView;
DeviceHolder holder = null;
LayoutInflater inflater = ((Activity) mContext).getLayoutInflater();
row = inflater.inflate(mLayoutResourceId, parent, false);
holder = new DeviceHolder();
holder.device = mItems.get(position);
holder.toggleButton = (ToggleButton) row.findViewById(R.id.device_toggle);
holder.description = (TextView)row.findViewById(R.id.device_description);
holder.toggleButton.setTag(holder.device);
row.setTag(holder);
setupItem(holder);
return row;
}
private void setupItem(DeviceHolder holder) {
holder.description.setText(holder.device.getDescription());
if (holder.device.getState().equals("on"))
{
holder.toggleButton.setChecked(true);
}
}
public static class DeviceHolder {
Device device;
TextView description;
ToggleButton toggleButton;
}
}