Why did you done like this, "mViewHolder.mBName" repeatedly used for getting different views
mViewHolder.mBName = (TextView) convertView.
findViewById(R.id.tvListItemBName);
mViewHolder.mBName = (TextView) convertView.
findViewById(R.id.tvListItemBAddress);
mViewHolder.mBName = (TextView) convertView.
findViewById(R.id.tvListItemBDealsCount);
mViewHolder.mBName = (TextView) convertView.
findViewById(R.id.tvListItemBDistance);
Hope above lines of code is the cause for your problem, use different variables for different textviews like below,
mViewHolder.mBName = (TextView) convertView.
findViewById(R.id.tvListItemBName);
mViewHolder.mBAddress= (TextView) convertView.
findViewById(R.id.tvListItemBAddress);
mViewHolder.mBDealsCount= (TextView) convertView.
findViewById(R.id.tvListItemBDealsCount);
mViewHolder.mBDistance = (TextView) convertView.
findViewById(R.id.tvListItemBDistance);