2

I'm trying to change the background color of a row based upon a flag received from the database on a remote server.

In my code, I create an ArrayList called disable that holds all of the positions that were flagged. I want to match what is in disable's list to the positions in my ListView. I have researched several postings and none of them explicitly show how to do this. I've pieced together what I found and put it in the custom adapter below.

From what I understand public int getItemViewType(int position) can select a specific row based on a condition and change it's properties. How do I change the background when this condition is met? The code in getItemViewType(int position) in my program does not work, but you can see what I am trying to do.

Question 1 : Do I need to make two xml layout files? One for normal view and the other disable view? Question 2: Do you know of any examples that have accomplished this that I can follow?

package com.convention.notification.app;

import java.util.List;

import android.app.Activity;
import android.content.Context;
import android.graphics.Color;
import android.os.Bundle;
import android.text.Html;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;

public class NewsRowAdapter extends ArrayAdapter<Item> {

    private Activity activity;
    private List<Item> items;
    private Item objBean;
    private int row;
    private List<Integer> disable;
    View view ;


    public NewsRowAdapter(Activity act, int resource, List<Item> arrayList, List<Integer> disableList) {
        super(act, resource, arrayList);
        this.activity = act;
        this.row = resource;
        this.items = arrayList;
        this.disable=disableList;

        System.out.println("results of delete list a:"+disable.toString()); 


    }

    public int getCount(){
       return items.size();
     }

    public Item getItem(int position){
         return null;
       }

    public long getItemId(int position){
       return position;
    }

    @Override
    public int getViewTypeCount() {
        return 2;


      }

   @Override
    public int getItemViewType(int position) {

        for (int s: disable){


           if (s == position){

            //   view.setBackgroundColor(Color.YELLOW);

           }


        }
        return position;

    }


    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {
         view = convertView;


        ViewHolder holder;
        if (view == null) {
            //ViewHolder is a custom class that gets TextViews by name
            holder = new ViewHolder();

            LayoutInflater inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            view = inflater.inflate(row, null);


            // holder.txtViewDescription = (TextView) convertView.findViewById(R.id.txtViewDescription); 


            /* setTag Sets the tag associated with this view. A tag can be used to
             * mark a view in its hierarchy and does not have to be unique 
             * within the hierarchy. Tags can also be used to store data within
             * a view without resorting to another data structure.

*/
        view.setTag(holder);
        } else {



            //the Object stored in this view as a tag
            holder = (ViewHolder) view.getTag();
        }

        if ((items == null) || ((position + 1) > items.size())){

            return view;
        }

        objBean = items.get(position);


        holder.tv_event_name = (TextView) view.findViewById(R.id.tv_event_name);
        holder.tv_event_date = (TextView) view.findViewById(R.id.tv_event_date);
        holder.tv_event_start = (TextView) view.findViewById(R.id.tv_event_start);
        holder.tv_event_end = (TextView) view.findViewById(R.id.tv_event_end);
        holder.tv_event_location = (TextView) view.findViewById(R.id.tv_event_location);


        if (holder.tv_event_name != null && null != objBean.getName()
                && objBean.getName().trim().length() > 0) {
            holder.tv_event_name.setText(Html.fromHtml(objBean.getName()));

        }
        if (holder.tv_event_date != null && null != objBean.getDate()
                && objBean.getDate().trim().length() > 0) {
            holder.tv_event_date.setText(Html.fromHtml(objBean.getDate()));
        }
        if (holder.tv_event_start != null && null != objBean.getStartTime()
                && objBean.getStartTime().trim().length() > 0) {
            holder.tv_event_start.setText(Html.fromHtml(objBean.getStartTime()));
        }
        if (holder.tv_event_end != null && null != objBean.getEndTime()
                && objBean.getEndTime().trim().length() > 0) {
            holder.tv_event_end.setText(Html.fromHtml(objBean.getEndTime()));
        }
        if (holder.tv_event_location != null && null != objBean.getLocation ()
                && objBean.getLocation ().trim().length() > 0) {
            holder.tv_event_location.setText(Html.fromHtml(objBean.getLocation ()));

        }


        return view;
    }

    public class ViewHolder {
        public TextView 
        tv_event_name,
        tv_event_date,
        tv_event_start,
        tv_event_end,
        tv_event_location
        /*tv_event_delete_flag*/;


    }


}

Logcat:

06-11 00:06:43.133: D/dalvikvm(60): GC_EXPLICIT freed 230K, 45% free 4939K/8839K, external 3511K/3903K, paused 81ms
06-11 00:06:43.133: I/installd(34): unlink /data/dalvik-cache/data@app@com.convention.notification.app-1.apk@classes.dex
06-11 00:06:43.133: D/AndroidRuntime(528): Shutting down VM
06-11 00:06:43.173: D/dalvikvm(528): GC_CONCURRENT freed 101K, 72% free 295K/1024K, external 0K/0K, paused 1ms+0ms
06-11 00:06:43.173: D/jdwp(528): Got wake-up signal, bailing out of select
06-11 00:06:43.173: D/dalvikvm(528): Debugger has detached; object registry had 1 entries
06-11 00:06:43.203: I/dalvikvm(528): JNI: AttachCurrentThread (from ???.???)
06-11 00:06:43.203: I/AndroidRuntime(528): NOTE: attach of thread 'Binder Thread #3' failed
06-11 00:06:43.653: D/AndroidRuntime(542): >>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit <<<<<<
06-11 00:06:43.653: D/AndroidRuntime(542): CheckJNI is ON
06-11 00:06:44.223: D/AndroidRuntime(542): Calling main entry com.android.commands.am.Am
06-11 00:06:44.243: I/ActivityManager(60): Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.convention.notification.app/.DataView } from pid 542
06-11 00:06:44.273: I/ActivityManager(60): Start proc com.convention.notification.app for activity com.convention.notification.app/.DataView: pid=550 uid=10042 gids={3003}
06-11 00:06:44.323: D/AndroidRuntime(542): Shutting down VM
06-11 00:06:44.323: D/dalvikvm(542): GC_CONCURRENT freed 103K, 69% free 319K/1024K, external 0K/0K, paused 1ms+1ms
06-11 00:06:44.334: D/dalvikvm(542): Debugger has detached; object registry had 1 entries
06-11 00:06:45.503: I/ActivityManager(60): Displayed com.convention.notification.app/.DataView: +1s233ms
06-11 00:06:47.163: I/System.out(550): item disalbed is at postion :1
06-11 00:06:47.163: I/System.out(550): item disalbed is at postion :6
06-11 00:06:47.163: I/System.out(550): item disalbed is at postion :14
06-11 00:06:47.163: I/System.out(550): item disalbed is at postion :15
06-11 00:06:47.163: I/System.out(550): item disalbed is at postion :18
06-11 00:06:47.163: I/System.out(550): results of delete list :[1, 6, 14, 15, 18]
06-11 00:06:47.163: I/System.out(550): results of delete list  in Adapeter:[1, 6, 14, 15, 18]
06-11 00:06:47.173: I/System.out(550):  set adapaer to list view called;
06-11 00:06:50.693: D/dalvikvm(237): GC_EXPLICIT freed 8K, 51% free 2725K/5511K, external 1625K/2137K, paused 61ms
06-11 00:06:55.783: D/dalvikvm(264): GC_EXPLICIT freed 17K, 52% free 2778K/5703K, external 1625K/2137K, paused 98ms
06-11 00:07:05.163: D/dalvikvm(308): GC_EXPLICIT freed 15K, 49% free 3363K/6535K, external 1625K/2137K, paused 43ms
06-11 00:07:10.284: D/dalvikvm(361): GC_EXPLICIT freed 15K, 48% free 3523K/6727K, external 1625K/2137K, paused 102ms
06-11 00:07:15.303: D/dalvikvm(378): GC_EXPLICIT freed 6K, 51% free 2718K/5511K, external 1625K/2137K, paused 73ms
06-11 00:07:20.383: D/dalvikvm(201): GC_EXPLICIT freed 21K, 50% free 2995K/5959K, external 1625K/2137K, paused 121ms
06-11 00:07:25.463: D/dalvikvm(130): GC_EXPLICIT freed 114K, 48% free 3089K/5895K, external 4932K/5608K, paused 124ms
06-11 00:11:22.113: D/SntpClient(60): request time failed: java.net.SocketException: Address family not supported by protocol

--------------------------update----------------------------- I fix this exception error by removing getItem() methods and I'm able to see yellow backgrounds on a few views in the list.

The current issue is in the while loop. I am trying to compare my listview with the flagged items and only put a yellow background on the Flagged items. However, I am getting a yellow background on every fourth view. This is not what I intend to do. Can you suggest to me what to do to fix the logic in the While loop and/or for loop to get the yellow background matched with the correct position/view?

Here is the updated code:

package com.convention.notification.app;

import java.util.List;



import android.app.Activity;
import android.content.Context;
import android.graphics.Color;
import android.os.Bundle;
import android.text.Html;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;

public class NewsRowAdapter extends ArrayAdapter<Item> {

    private Activity activity;
    private List<Item> items;
    private Item objBean;
    private int row;
    private List<Integer> disable;
    View view ;

    public NewsRowAdapter(Activity act, int resource, List<Item> arrayList, List<Integer> disableList) {
        super(act, resource, arrayList);
        this.activity = act;
        this.row = resource;
        this.items = arrayList;
        this.disable=disableList;

        System.out.println("results of delete list a:"+disable.toString()); 



    }






            @Override
            public View getView(final int position, View convertView, ViewGroup parent) {
                View view = convertView;
                ViewHolder holder;
                if (view == null) {
                    LayoutInflater inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                    view = inflater.inflate(row, null);



                    try{
                                int j = 0;
                                while (j < items.size()) {
                                    for(int k =0;k< disable.size();k++){
                                        if(position == disable.get(k)){
                                            view.setBackgroundColor(Color.YELLOW);
                                            System.out.println("background set to yellow at disable "+disable.get(j));
System.out.println("background set to yellow at position "+position);
                                        } else {
                                            view.setBackgroundColor(Color.WHITE);
            System.out.println("background set to white at position "+position);

                    }
                                    }

                                    j++;   
                                }
                    }catch(IndexOutOfBoundsException e){

                    System.out.println(" crash");
                    }




                    //ViewHolder is a custom class that gets TextViews by name: tvName, tvCity, tvBDate, tvGender, tvAge;
                    holder = new ViewHolder();

                    /* setTag Sets the tag associated with this view. A tag can be used to
                     *  mark a view in its hierarchy and does not have to be unique 
                     *  within the hierarchy. Tags can also be used to store data within
                     *   a view without resorting to another data structure.

        */
                    view.setTag(holder);
                } else {

                    //the Object stored in this view as a tag
                    holder = (ViewHolder) view.getTag();
                }

                if ((items == null) || ((position + 1) > items.size()))
                    return view;

                objBean = items.get(position);


        holder.tv_event_name = (TextView) view.findViewById(R.id.tv_event_name);
        holder.tv_event_date = (TextView) view.findViewById(R.id.tv_event_date);
        holder.tv_event_start = (TextView) view.findViewById(R.id.tv_event_start);
        holder.tv_event_end = (TextView) view.findViewById(R.id.tv_event_end);
        holder.tv_event_location = (TextView) view.findViewById(R.id.tv_event_location);


        if (holder.tv_event_name != null && null != objBean.getName()
                && objBean.getName().trim().length() > 0) {
            holder.tv_event_name.setText(Html.fromHtml(objBean.getName()));

        }
        if (holder.tv_event_date != null && null != objBean.getDate()
                && objBean.getDate().trim().length() > 0) {
            holder.tv_event_date.setText(Html.fromHtml(objBean.getDate()));
        }
        if (holder.tv_event_start != null && null != objBean.getStartTime()
                && objBean.getStartTime().trim().length() > 0) {
            holder.tv_event_start.setText(Html.fromHtml(objBean.getStartTime()));
        }
        if (holder.tv_event_end != null && null != objBean.getEndTime()
                && objBean.getEndTime().trim().length() > 0) {
            holder.tv_event_end.setText(Html.fromHtml(objBean.getEndTime()));
        }
        if (holder.tv_event_location != null && null != objBean.getLocation ()
                && objBean.getLocation ().trim().length() > 0) {
            holder.tv_event_location.setText(Html.fromHtml(objBean.getLocation ()));

        }


        return view;
    }

    public class ViewHolder {
        public TextView 
        tv_event_name,
        tv_event_date,
        tv_event_start,
        tv_event_end,
        tv_event_location
        /*tv_event_delete_flag*/;


    }


}

Logcat:

06-11 10:54:45.063: I/System.out(1692): item disalbed is at postion :1
06-11 10:54:45.063: I/System.out(1692): item disalbed is at postion :6
06-11 10:54:45.063: I/System.out(1692): item disalbed is at postion :14
06-11 10:54:45.063: I/System.out(1692): item disalbed is at postion :15
06-11 10:54:45.073: I/System.out(1692): item disalbed is at postion :18
06-11 10:54:45.073: I/System.out(1692): results of delete list :[1, 6, 14, 15, 18]
06-11 10:54:45.073: I/System.out(1692): results of delete list a:[1, 6, 14, 15, 18]
06-11 10:54:45.073: I/System.out(1692):  set adapaer to list view called;
06-11 10:54:45.183: I/System.out(1692): background set to white at position 0

06-11 10:54:45.393: I/System.out(1692): background set to white at position 0
06-11 10:54:45.393: I/System.out(1692): background set to white at position 0
06-11 10:54:45.393: I/System.out(1692): background set to white at position 0
06-11 10:54:45.393: I/System.out(1692): background set to white at position 0
06-11 10:54:45.393: I/System.out(1692): background set to white at position 0
06-11 10:54:45.393: I/System.out(1692): background set to white at position 0
06-11 10:54:45.403: I/System.out(1692): background set to white at position 0
06-11 10:54:45.403: I/System.out(1692): background set to white at position 0
06-11 10:54:45.403: I/System.out(1692): background set to white at position 0
06-11 10:54:45.403: I/System.out(1692): background set to white at position 0
06-11 10:54:45.403: I/System.out(1692): background set to white at position 0
06-11 10:54:45.403: I/System.out(1692): background set to white at position 0
06-11 10:54:45.573: I/System.out(1692): background set to yellow at disable list 1
06-11 10:54:45.573: I/System.out(1692): background set to yellow at position 1
06-11 10:54:45.573: I/System.out(1692): background set to white at position 1
06-11 10:54:45.573: I/System.out(1692): background set to white at position 1
06-11 10:54:45.573: I/System.out(1692): background set to white at position 1
06-11 10:54:45.573: I/System.out(1692): background set to white at position 1
06-11 10:54:45.573: I/System.out(1692): background set to yellow at disable list 6
06-11 10:54:45.573: I/System.out(1692): background set to yellow at position 1
06-11 10:54:45.573: I/System.out(1692): background set to white at position 1
06-11 10:54:45.573: I/System.out(1692): background set to white at position 1
06-11 10:54:45.573: I/System.out(1692): background set to white at position 1
06-11 10:54:45.573: I/System.out(1692): background set to white at position 1
06-11 10:54:45.573: I/System.out(1692): background set to yellow at disable list 14
06-11 10:54:45.573: I/System.out(1692): background set to yellow at position 1
06-11 10:54:45.583: I/System.out(1692): background set to white at position 1
06-11 10:54:45.583: I/System.out(1692): background set to white at position 1
06-11 10:54:45.583: I/System.out(1692): background set to white at position 1
06-11 10:54:45.583: I/System.out(1692): background set to white at position 1
06-11 10:54:45.583: I/System.out(1692): background set to yellow at disable list 15
06-11 10:54:45.583: I/System.out(1692): background set to yellow at position 1
06-11 10:54:45.583: I/System.out(1692): background set to white at position 1
06-11 10:54:45.583: I/System.out(1692): background set to white at position 1
06-11 10:54:45.583: I/System.out(1692): background set to white at position 1
06-11 10:54:45.583: I/System.out(1692): background set to white at position 1
06-11 10:54:45.583: I/System.out(1692): background set to yellow at disable list 18
06-11 10:54:45.583: I/System.out(1692): background set to yellow at position 1
06-11 10:54:45.583: I/System.out(1692): background set to white at position 1
06-11 10:54:45.583: I/System.out(1692): background set to white at position 1
06-11 10:54:45.583: I/System.out(1692): background set to white at position 1
06-11 10:54:45.583: I/System.out(1692): background set to white at position 1
06-11 10:54:45.593: I/System.out(1692):  crash
06-11 10:54:45.623: I/System.out(1692): background set to white at position 2
06-11 10:54:45.623: I/System.out(1692): background set to white at position 2
06-11 10:54:45.623: I/System.out(1692): background set to white at position 2
06-11 10:54:45.623: I/System.out(1692): background set to white at position 2
06-11 10:54:45.623: I/System.out(1692): background set to white at position 2
06-11 10:54:45.623: I/System.out(1692): background set to white at position 2
06-11 10:54:45.623: I/System.out(1692): background set to white at position 2
06-11 10:54:45.623: I/System.out(1692): background set to white at position 2
06-11 10:54:45.623: I/System.out(1692): background set to white at position 2
06-11 10:54:45.623: I/System.out(1692): background set to white at position 2
06-11 10:54:45.623: I/System.out(1692): background set to white at position 2
06-11 10:54:45.623: I/System.out(1692): background set to white at position 2
06-11 10:54:45.623: I/Sys....3,4,....
06-11 10:54:46.163: I/System.out(1692): background set to white at position 5
06-11 10:54:46.163: I/System.out(1692): background set to white at position 5
06-11 10:54:46.163: I/System.out(1692): background set to white at position 5
06-11 10:54:46.163: I/System.out(1692): background set to white at position 5
06-11 10:54:46.163: I/System.out(1692): background set to white at position 5
06-11 10:54:46.163: I/System.out(1692): background set to white at position 5
06-11 10:54:46.163: I/System.out(1692): background set to white at position 5
06-11 10:54:46.163: I/System.out(1692): background set to white at position 5
06-11 10:54:46.173: I/System.out(1692): background set to white at position 5
06-11 10:54:46.173: I/System.out(1692): background set to white at position 5
06-11 10:54:46.173: I/System.out(1692): background set to white at position 5
06-11 10:54:46.173: I/System.out(1692): background set to white at position 5
06-11 10:54:46.173: I/System.out(1692): background set to white at position 5
06-11 10:54:46.173: I/System.out(1692): background set to white at position 5
06-11 10:54:46.173: I/System.out(1692): background set to white at position 5
06-11 10:54:46.173: I/System.out(1692): background set to white at position 5
06-11 10:54:46.173: I/System.out(1692): background set to white at position 5
06-11 10:54:46.173: I/System.out(1692): background set to white at position 5
06-11 10:54:46.183: I/System.out(1692): background set to white at position 5
06-11 10:54:46.183: I/System.out(1692): background set to white at position 5
06-11 10:54:46.183: I/System.out(1692): background set to white at position 5
06-11 10:54:46.183: I/System.out(1692): background set to white at position 5
06-11 10:54:46.183: I/System.out(1692): background set to white at position 5
06-11 10:54:46.183: I/System.out(1692): background set to white at position 5
06-11 10:54:46.183: I/System.out(1692): background set to white at position 5
06-11 10:54:46.183: I/System.out(1692): background set to white at position 5
06-11 10:54:46.183: I/System.out(1692): background set to white at position 5
06-11 10:54:46.183: I/System.out(1692): background set to white at position 5
06-11 10:54:46.183: I/System.out(1692): background set to white at position 5
06-11 10:54:46.183: I/System.out(1692): background set to white at position 5
06-11 10:54:46.183: I/System.out(1692): background set to white at position 5
06-11 10:54:46.193: I/System.out(1692): background set to white at position 5
06-11 10:54:46.193: I/System.out(1692): background set to white at position 5
06-11 10:54:46.193: I/System.out(1692): background set to white at position 5
06-11 10:54:46.193: I/System.out(1692): background set to white at position 5
06-11 10:54:46.193: I/System.out(1692): background set to white at position 5
06-11 10:54:46.193: I/System.out(1692): background set to white at position 5
06-11 10:54:46.193: I/System.out(1692): background set to white at position 5
06-11 10:54:46.203: I/System.out(1692): background set to white at position 5
06-11 10:54:46.203: I/System.out(1692): background set to white at position 5
06-11 10:54:46.203: I/System.out(1692): background set to white at position 5
06-11 10:54:46.203: I/System.out(1692): background set to white at position 5
06-11 10:54:46.203: I/System.out(1692): background set to white at position 5
06-11 10:54:46.203: I/System.out(1692): background set to white at position 5
06-11 10:54:46.203: I/System.out(1692): background set to white at position 5
06-11 10:54:46.203: I/System.out(1692): background set to white at position 5
06-11 10:54:46.283: I/System.out(1692): background set to white at position 6
06-11 10:54:46.283: I/System.out(1692): background set to yellow at disable list 1
06-11 10:54:46.283: I/System.out(1692): background set to yellow at position 6
06-11 10:54:46.283: I/System.out(1692): background set to white at position 6
06-11 10:54:46.283: I/System.out(1692): background set to white at position 6
06-11 10:54:46.283: I/System.out(1692): background set to white at position 6
06-11 10:54:46.283: I/System.out(1692): background set to white at position 6
06-11 10:54:46.283: I/System.out(1692): background set to yellow at disable list 6
06-11 10:54:46.283: I/System.out(1692): background set to yellow at position 6
06-11 10:54:46.283: I/System.out(1692): background set to white at position 6
06-11 10:54:46.283: I/System.out(1692): background set to white at position 6
06-11 10:54:46.283: I/System.out(1692): background set to white at position 6
06-11 10:54:46.283: I/System.out(1692): background set to white at position 6
06-11 10:54:46.283: I/System.out(1692): background set to yellow at disable list 14
06-11 10:54:46.283: I/System.out(1692): background set to yellow at position 6
06-11 10:54:46.283: I/System.out(1692): background set to white at position 6
06-11 10:54:46.283: I/System.out(1692): background set to white at position 6
06-11 10:54:46.293: I/System.out(1692): background set to white at position 6
06-11 10:54:46.293: I/System.out(1692): background set to white at position 6
06-11 10:54:46.293: I/System.out(1692): background set to yellow at disable list 15
06-11 10:54:46.293: I/System.out(1692): background set to yellow at position 6
06-11 10:54:46.293: I/System.out(1692): background set to white at position 6
06-11 10:54:46.293: I/System.out(1692): background set to white at position 6
06-11 10:54:46.303: I/System.out(1692): background set to white at position 6
06-11 10:54:46.303: I/System.out(1692): background set to white at position 6
06-11 10:54:46.303: I/System.out(1692): background set to yellow at disable list 18
06-11 10:54:46.303: I/System.out(1692): background set to yellow at position 6
06-11 10:54:46.303: I/System.out(1692): background set to white at position 6
06-11 10:54:46.303: I/System.out(1692): background set to white at position 6
06-11 10:54:46.303: I/System.out(1692): background set to white at position 6
06-11 10:54:46.303: I/System.out(1692): background set to white at position 6
06-11 10:54:46.303: I/System.out(1692):  crash
06-11 10:54:46.353: I/System.out(1692): background set to white at position 7
06-11 10:54:46.353: I/System.out(1692): background set to white at position 7
06-11 10:54:46.353: I/System.out(1692): background set to white at position 7
06-11 10:54:46.353: I/System.out(1692): background set to white at position 7
06-11 10:54:46.353: I/System.out(1692): background set to white at position 7
06-11 10:54:46.353: I/System.out(......

Thanks for your help!

Leoa
  • 1,167
  • 2
  • 14
  • 31

1 Answers1

0

Get the entire row whom Background you want to change by finding its Id from View. Now set its backgound of your choice...

Get further help from this link..:

Changing background color of ListView items on Android

Community
  • 1
  • 1
Awais Tariq
  • 7,724
  • 5
  • 31
  • 54
  • unfortunately, @Awais Tariq the examples in the link you posted are for items that have been clicked on and that information is sent to the adapter. What I need is for a flag list to be compared to a large list of items that where generated from a database. I'd like to indicate this flag by changing the background. The one example from that post that used an adapter was incomplete and it is not clear how curSelected was implemented. I've been at this for a few days and I'd like any help with this program. – Leoa Jun 11 '12 at 09:38
  • I was able to get the back ground to change color however the logic is off.[link](http://leobee.com/android/push/so/flag.jpg) It is not using the disable list's values and comparing it to the position of the view. How can I put those together? I've posted the updated version of my code at the bottom of my original question. – Leoa Jun 11 '12 at 10:45