W swoim CustomAdapter.class dodać ten kod
public View getView(final int position, View convertView, final ViewGroup parent) {
ViewHolder holder = new ViewHolder();
holder.txtDetails = (TextView) vi.findViewById(R.id.txt_expenses_details);
holder.txtDetails.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
((ListView) parent).performItemClick(v, position, 0);
}
});
vi.setTag(holder);
return vi;
}
W swojej MainActivity.class
kliknięcie TextView i zmień wartość
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
long viewId = view.getId();
if (viewId == R.id.txt_expenses_details) {
((TextView)view).setText("Hey, I've just been tapped on!");
customListAdapter.notifyDataSetChanged();
}
}
});
Kliknij ListView i zmiana wartości (lub)
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
TextView tv = (TextView) view.findViewById(R.id.txt_expenses_details);
tv.setText(...);
customListAdapter.notifyDataSetChanged();
}
});
Przez "' '' '' 'odnosi się do pozycji widoku wewnątrz widoku listy? – danypata
@danypata Tak ... Pozycja adaptera – dinomuharemagic
getPosition() i getItem() są tylko w tym przypadku. Tak, możesz tak, że musisz unieważniać za każdym razem, gdy wymieniasz jakiś przedmiot. – RATHI