A versatile approach for preparing self-recovering superhydrophobic coatings