Consider an amino acid as a zwitterion. It has both a basic amine functionality and an acidic carboxylic acid functionality. At a high pH, the acidic functionality will be largely deprotinated and the ion will have a net negative charge. Oppositely, at low pH, the amine group is largely protinated and the compound will have a net positive charge. Clearly, there is some intermediate pH at which the positive and negative charges are equal (or it's neither protinated nor deprotinated) and the net charge is zero.
To maintain charge neutrality, a charged species must have some oppositely charged ionic species associated to maintain charge neutrality. For example, under acidic conditions when the amine group is protinated, you need some anion present, like chloride for example, to be associated with the compound to maintain charge balance. This counter-ion is also known as an adherent ionic species (adherent meaning adhering to, like when the compound is an undissolved solid).