I would say most people speak and/or understand Afrikaans.
Most English schools require you to have afrikaans as a second language.
but many people have for example Zulu as a first language, therefore dont have afrikaans.
lets take my example for example. My family on my fathers side is afrikaans (from the Northern Cape). but i went to an english school, therefore did afrikaans. however, i dont speak afrikaans (im from JHB). i understand, and can speak, but not fluent, and certainly cant read it well. this will be the case from many people in JHB.