Put this code in your adapter class :
private int selectedPos = -1;
public void setSelectedPosition(int pos){
selectedPos = pos;
notifyDataSetChanged();
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
convertView = LayoutInflater.from(parent.getContext()).inflate(
R.layout.listitem, null);
}
TextView title = (TextView) convertView.findViewById(R.id.title);
title.setText(dataObjects[position]);
if (selectedPos == position) {
title.setTextColor(Color.parseColor("#368AFF"));
title.setTextSize(TypedValue.COMPLEX_UNIT_SP, 16);
} else {
title.setTextColor(Color.parseColor("#000000"));
}
return convertView;
}
And on item click, call method to set current position:
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
adapter.setSelectedPosition(pos);
}