Rendering Sprite on Newly Created Body

Hello,

I have been successful in rendering a spriteBatch to a simple square body that is created onCreate using the following code under render():

batch.setProjectionMatrix(camera.combined);
batch.begin();
world.getBodies(tmpBodies);
for (Body body : tmpBodies){
if(body.getUserData() != null && body.getUserData() instanceof Sprite) {
Sprite sprite = (Sprite) body.getUserData();
sprite.setPosition(body.getPosition().x - sprite.getWidth() / 2, body.getPosition().y - sprite.getHeight() / 2);
sprite.setRotation(body.getAngle() * MathUtils.radiansToDegrees);
sprite.draw(batch);
}
}
batch.end();

However, I have it so square bodies are created each time the screen is touched and don’t know how to attach a sprite to these newly created bodies.

Any ideas?