Listview Selected Item Color Changed When Come Back From Other Activity In Android
How to do Listview selected item color stay changed when come back from other activity in android? Please give me a proper solution. Here, I attached Adapter class public class Sel
Solution 1:
To do so u need to save textview states that is selected or not. first create map as a global to ur class as,
Map<Integer, Boolean> map_textcolor=new HashMap<Integer, Boolean>();
then change ur getView method like this..
@Overridepublic View getView(int position, View convertView, ViewGroup parent) {
Viewv= convertView;
// only inflate the view if it's nullif (v == null) {
LayoutInflatervi= (LayoutInflater)this.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.simplerow, null);
}
// get text viewTextViewlabel= (TextView)v.findViewById(R.id.rowTextView);
*******************************************************************************
// change the row color based on selected state
Boolean selectedPos=map_textcolor.get(position);
if(selectedPos!=null&&selectedPos.booleanValue())
{
//label.setSelected(true);
label.setTextColor(Color.CYAN);
selected_view=label;
}
else
{
//label.setSelected(false);
label.setTextColor(Color.WHITE);
}
******************************************************************************
label.setText(this.getItem(position).toString());
then add code to listner like this...
finalint p=position;
label.setOnClickListener(newOnClickListener() {
@OverridepublicvoidonClick(View view) {
// TODO Auto-generated method stubif(selected_view!=null)
{
//selected_view.setSelected(false);
label.setTextColor(Color.WHITE);
map_textcolor.remove(prev_pos);
}
selected_view=view;
// selected_view.setSelected(true);
label.setTextColor(Color.CYAN);
map_textcolor.put(p, true);
prev_pos=p;
}
});
/*
// to use something other than .toString()
MyClass myobj = (MyClass)this.getItem(position);
label.setText(myobj.myReturnsString());
*/return(v);
}
Post a Comment for "Listview Selected Item Color Changed When Come Back From Other Activity In Android"