Используйте базовые данные, используемые для привязки текста к текстовому представлению, обновления этих данных и уведомления ListView об изменении данных.
For example
List<Map<String,String> data = new List<Map<String,String>>();
// a bunch of add's
adapter = new SimpleAdapter(Activity.this, data, R.layout.list_item,
new String{TEXT1, TEXT2, TEXT3, IMG1},
new int[] {R.id.text1, R.id.text2, R.id.text3, R.id.IMG1});
// set adapter
// ...
onListItemClick(..., int position, long id){
Map<String,String> item = data.get(position);
item.put(TEXT1, updatedText1String);
item.put(TEXT2, updatedText2String);
item.put(TEXT3, updatedText3String);
listView.notifyDataSetChanged();
}