package com.echo5bravo.govre.ADAPTERS; import java.util.ArrayList; import com.echo5bravo.govre.UTILS.Common; import com.echo5bravo.govre.R; import android.annotation.SuppressLint; import android.app.Activity; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.view.ViewGroup.LayoutParams; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.TextView; @SuppressLint("ResourceAsColor") public class ScheduleGridAdapter extends BaseAdapter{ private ArrayList<String> listText; private ArrayList<String> listHiddenDepartureTime; private ArrayList<String> listHiddenToast; private ArrayList<String> listHiddenSelectedRow; private ArrayList<Integer> listImg; private Activity activity; public ScheduleGridAdapter(Activity activity , ArrayList<String> listText , ArrayList<Integer> listImg , ArrayList<String> listHiddenToast , ArrayList<String> listHiddenSelectedRow , ArrayList<String> listHiddenDepartureTime) { super(); this.listText = listText; this.listHiddenDepartureTime = listHiddenDepartureTime; this.listImg = listImg; this.listHiddenToast = listHiddenToast; this.listHiddenSelectedRow = listHiddenSelectedRow; this.activity = activity; } public void refill(Activity activity , ArrayList<String> listText , ArrayList<Integer> listImg , ArrayList<String> listHiddenToast , ArrayList<String> listHiddenSelectedRow , ArrayList<String> listHiddenDepartureTime) { this.listText = listText; this.listHiddenDepartureTime = listHiddenDepartureTime; this.listImg = listImg; this.listHiddenToast = listHiddenToast; this.listHiddenSelectedRow = listHiddenSelectedRow; this.activity = activity; notifyDataSetChanged(); } public int getCount() { return listHiddenToast.size(); } public String getItem(int position) { return listHiddenToast.get(position); } public long getItemId(int position) { return 0; } public static class ViewHolder { public ImageView imgViewFlag; public TextView txtViewTitle; public TextView txtHiddenDepartureTime; public TextView txtViewHiddenToast; public TextView txtViewHiddenSelectedRow; } public View getView(int position, View convertView, ViewGroup parent) { ViewHolder view; LayoutInflater inflator = activity.getLayoutInflater(); long departureDelta = 0; if(convertView==null) { view = new ViewHolder(); convertView = inflator.inflate(R.layout.schedule_grid_row, null); view.txtViewTitle = (TextView) convertView.findViewById(R.id.textView1); view.txtHiddenDepartureTime = (TextView) convertView.findViewById(R.id.txtHiddenDepartureTime); view.txtViewHiddenToast = (TextView) convertView.findViewById(R.id.texthiddentoast); view.txtViewHiddenSelectedRow = (TextView) convertView.findViewById(R.id.texthiddenrowselected); view.imgViewFlag = (ImageView) convertView.findViewById(R.id.imageView1); convertView.setTag(view); } else { view = (ViewHolder) convertView.getTag(); } view.txtViewTitle.setText(listText.get(position)); //view.txtHiddenDepartureTime.setText(Common.CompareTimeDelta(listHiddenDepartureTime.get(position))); if (listHiddenDepartureTime.get(position) != "") departureDelta = Common.CompareTimeDelta(listHiddenDepartureTime.get(position)); view.txtViewHiddenToast.setText(listHiddenToast.get(position)); view.imgViewFlag.setImageResource(listImg.get(position)); view.txtViewHiddenSelectedRow.setText(listHiddenSelectedRow.get(position)); if (view.txtViewTitle.getText().length() > 0 && !view.txtViewTitle.getText().equals("M-F")){ // Gets the layout params that will allow you to resize the layout LayoutParams imgViewFlagParams = view.imgViewFlag.getLayoutParams(); // Changes the height and width to the specified *pixels* imgViewFlagParams.height = 0; imgViewFlagParams.width = 0; view.imgViewFlag.invalidate(); // Gets the layout params that will allow you to resize the layout LayoutParams txtViewTitleParams = view.txtViewTitle.getLayoutParams(); // Changes the height and width to the specified *pixels* txtViewTitleParams.height = 48; txtViewTitleParams.width = 200; //LayoutParams.FILL_PARENT; view.txtViewTitle.invalidate(); } else if (view.txtViewTitle.getText().equals("M-F")){ // Gets the layout params that will allow you to resize the layout LayoutParams imgViewFlagParams = view.imgViewFlag.getLayoutParams(); // Changes the height and width to the specified *pixels* imgViewFlagParams.height = 28; imgViewFlagParams.width = LayoutParams.WRAP_CONTENT; view.imgViewFlag.invalidate(); // Gets the layout params that will allow you to resize the layout LayoutParams txtViewTitleParams = view.txtViewTitle.getLayoutParams(); // Changes the height and width to the specified *pixels* txtViewTitleParams.height = 48; txtViewTitleParams.width = 200; //LayoutParams.FILL_PARENT; view.txtViewTitle.invalidate(); } else { // Gets the layout params that will allow you to resize the layout LayoutParams imgViewFlagParams = view.imgViewFlag.getLayoutParams(); // Changes the height and width to the specified *pixels* imgViewFlagParams.height = 48; imgViewFlagParams.width = LayoutParams.WRAP_CONTENT; view.imgViewFlag.invalidate(); // Gets the layout params that will allow you to resize the layout LayoutParams txtViewTitleParams = view.txtViewTitle.getLayoutParams(); // Changes the height and width to the specified *pixels* txtViewTitleParams.height = 0; txtViewTitleParams.width = 0; view.txtViewTitle.invalidate(); } //if (Boolean.valueOf(view.txtViewHiddenSelectedRow.getText().toString()) && view.txtViewTitle.getText().length() > 0){ if (Boolean.valueOf(view.txtViewHiddenSelectedRow.getText().toString())){ if (departureDelta < 0){ //view.txtViewTitle.setBackgroundColor(0xff00ffff); //Cyan view.txtViewTitle.setBackgroundColor(0xffffff00); //Yellow view.txtViewTitle.invalidate(); view.imgViewFlag.setBackgroundColor(0xffffff00); //Yellow view.imgViewFlag.invalidate(); } else { //view.txtViewTitle.setBackgroundColor(0xff00ffff); //Cyan view.txtViewTitle.setBackgroundColor(0xFFFFD700); // Gold view.txtViewTitle.invalidate(); view.imgViewFlag.setBackgroundColor(0xffffff00); //Yellow view.imgViewFlag.invalidate(); } } else { if (departureDelta < 0){ view.txtViewTitle.setBackgroundColor(0xffffffff); //White view.txtViewTitle.invalidate(); } else { view.txtViewTitle.setBackgroundColor(0xFFDCDCDC); // Gainsboro view.txtViewTitle.invalidate(); } view.imgViewFlag.setBackgroundColor(0xffffffff); //White view.imgViewFlag.invalidate(); } return convertView; } }