Simply you need to append context of activity while calling intent!
Within Onclick@
Use#
Intent intent = new Intent(Intent.ACTION_DIAL);
intent.setData(Uri.parse(uri));
activity.startActivity(intent);
Instead#
Intent intent = new Intent(Intent.ACTION_DIAL);
intent.setData(Uri.parse(uri));
startActivity(intent);
Additionally#
Use ViewHoder inside getView()
method and set tag to button and get tag
inside onClick to get correct position of view.